diff --git a/toolkits/mailchimp_marketing_api/.pre-commit-config.yaml b/toolkits/mailchimp_marketing_api/.pre-commit-config.yaml
new file mode 100644
index 00000000..593e2504
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/.pre-commit-config.yaml
@@ -0,0 +1,18 @@
+files: ^.*/arcade_mailchimp_marketing_api/.*
+repos:
+ - repo: https://github.com/pre-commit/pre-commit-hooks
+ rev: "v4.4.0"
+ hooks:
+ - id: check-case-conflict
+ - id: check-merge-conflict
+ - id: check-toml
+ - id: check-yaml
+ - id: end-of-file-fixer
+ - id: trailing-whitespace
+
+ - repo: https://github.com/astral-sh/ruff-pre-commit
+ rev: v0.6.7
+ hooks:
+ - id: ruff
+ args: [--fix]
+ - id: ruff-format
diff --git a/toolkits/mailchimp_marketing_api/.ruff.toml b/toolkits/mailchimp_marketing_api/.ruff.toml
new file mode 100644
index 00000000..cddfde30
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/.ruff.toml
@@ -0,0 +1,47 @@
+target-version = "py310"
+line-length = 100
+fix = true
+exclude = [
+ "arcade_mailchimp_marketing_api/tools/__init__.py",
+ "arcade_mailchimp_marketing_api/tools/request_body_schemas.py",
+]
+[lint]
+select = [
+ # flake8-2020
+ "YTT",
+ # flake8-bandit
+ "S",
+ # flake8-bugbear
+ "B",
+ # flake8-builtins
+ "A",
+ # flake8-comprehensions
+ "C4",
+ # flake8-debugger
+ "T10",
+ # flake8-simplify
+ "SIM",
+ # isort
+ "I",
+ # mccabe
+ "C90",
+ # pycodestyle
+ "E", "W",
+ # pyflakes
+ "F",
+ # pygrep-hooks
+ "PGH",
+ # pyupgrade
+ "UP",
+ # ruff
+ "RUF",
+ # tryceratops
+ "TRY",
+]
+
+[lint.per-file-ignores]
+"**/tests/*" = ["S101"]
+
+[format]
+preview = true
+skip-magic-trailing-comma = false
diff --git a/toolkits/mailchimp_marketing_api/LICENSE b/toolkits/mailchimp_marketing_api/LICENSE
new file mode 100644
index 00000000..dfbb8b76
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2025, Arcade AI
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/toolkits/mailchimp_marketing_api/Makefile b/toolkits/mailchimp_marketing_api/Makefile
new file mode 100644
index 00000000..86da492a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/Makefile
@@ -0,0 +1,54 @@
+.PHONY: help
+
+help:
+ @echo "🛠️ github Commands:\n"
+ @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
+
+.PHONY: install
+install: ## Install the uv environment and install all packages with dependencies
+ @echo "🚀 Creating virtual environment and installing all packages using uv"
+ @uv sync --active --all-extras --no-sources
+ @if [ -f .pre-commit-config.yaml ]; then uv run --no-sources pre-commit install; fi
+ @echo "✅ All packages and dependencies installed via uv"
+
+.PHONY: install-local
+install-local: ## Install the uv environment and install all packages with dependencies with local Arcade sources
+ @echo "🚀 Creating virtual environment and installing all packages using uv"
+ @uv sync --active --all-extras
+ @if [ -f .pre-commit-config.yaml ]; then uv run pre-commit install; fi
+ @echo "✅ All packages and dependencies installed via uv"
+.PHONY: build
+build: clean-build ## Build wheel file using poetry
+ @echo "🚀 Creating wheel file"
+ uv build
+
+.PHONY: clean-build
+clean-build: ## clean build artifacts
+ @echo "🗑️ Cleaning dist directory"
+ rm -rf dist
+
+.PHONY: test
+test: ## Test the code with pytest
+ @echo "🚀 Testing code: Running pytest"
+ @uv run --no-sources pytest -W ignore -v --cov --cov-config=pyproject.toml --cov-report=xml
+
+.PHONY: coverage
+coverage: ## Generate coverage report
+ @echo "coverage report"
+ @uv run --no-sources coverage report
+ @echo "Generating coverage report"
+ @uv run --no-sources coverage html
+
+.PHONY: bump-version
+bump-version: ## Bump the version in the pyproject.toml file by a patch version
+ @echo "🚀 Bumping version in pyproject.toml"
+ uv version --no-sources --bump patch
+
+.PHONY: check
+check: ## Run code quality tools.
+ @if [ -f .pre-commit-config.yaml ]; then\
+ echo "🚀 Linting code: Running pre-commit";\
+ uv run --no-sources pre-commit run -a;\
+ fi
+ @echo "🚀 Static type checking: Running mypy"
+ @uv run --no-sources mypy --config-file=pyproject.toml
diff --git a/toolkits/mailchimp_marketing_api/README.md b/toolkits/mailchimp_marketing_api/README.md
new file mode 100644
index 00000000..eccd88ce
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/README.md
@@ -0,0 +1,26 @@
+
+

+
+
+
+
+
+
+
+
+# Arcade mailchimp_marketing_api Toolkit
+Tools that enable LLMs to interact directly with the Mailchimp Marketing API.
+## Features
+
+- The mailchimp_marketing_api toolkit does not have any features yet.
+
+## Development
+
+Read the docs on how to create a toolkit [here](https://docs.arcade.dev/home/build-tools/create-a-toolkit)
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/__init__.py b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/__init__.py
new file mode 100644
index 00000000..e69de29b
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/moar/Mailchimp_Marketing.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/moar/Mailchimp_Marketing.json
new file mode 100644
index 00000000..508edbe9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/moar/Mailchimp_Marketing.json
@@ -0,0 +1,56863 @@
+{
+ "name": "Mailchimp_Marketing",
+ "spec_source": "openapi_spec",
+ "token_for_http_testing": "",
+ "package_name": "mailchimp_transaction_api",
+ "package_dir_path": "/Users/franciscojuniodelimaliberal/git/Team/arcade-mcp/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api",
+ "project_dir_path": "/Users/franciscojuniodelimaliberal/git/Team/arcade-mcp/toolkits/mailchimp_marketing_api",
+ "arcade_new_cmd_executed": true,
+ "api_endpoint_selection_customized": false,
+ "api_endpoint_for_http_testing": "",
+ "authorization_type": "oauth",
+ "auth_provider_id": "arcade-mailchimp",
+ "where_to_provide_token": "header",
+ "token_key_name": "Authorization",
+ "token_value": "Bearer {authorization}",
+ "secrets": [],
+ "global_base_url": "https://{mailchimp_server_subdomain}.api.mailchimp.com/3.0",
+ "global_headers": {},
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url",
+ "edit_operations": [],
+ "uuid": "57d43725-8bcf-47d0-9369-1f0f6f32c1d8",
+ "api_endpoints": [
+ {
+ "name": "getRoot",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_mailchimp_api_resources",
+ "description": {
+ "tagline": "Retrieve all available Mailchimp API resource links.",
+ "detailed": "This tool fetches links to all the resources available in the Mailchimp Marketing API, providing easy access to various API endpoints."
+ },
+ "return_annotation": "Links to various Mailchimp API resources.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "desired_fields",
+ "specific_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "fields_to_exclude"
+ ],
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/",
+ "tags": [
+ "root"
+ ],
+ "summary": "List api root resources",
+ "description": "Get links to all other resources available in the API.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getActivityFeedChimpChatter",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_chimp_chatter_activity",
+ "description": {
+ "tagline": "Retrieve the latest Chimp Chatter activity for your account.",
+ "detailed": "Use this tool to fetch the most recent Chimp Chatter activity feed from your Mailchimp account. This provides updates ordered by the latest first."
+ },
+ "return_annotation": "Recent Chimp Chatter activity for the account.",
+ "arguments": [
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "results_quantity"
+ ],
+ "description": "Specify the number of Chimp Chatter records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_after"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/activity-feed/chimp-chatter",
+ "tags": [
+ "activityFeed"
+ ],
+ "summary": "Get latest chimp chatter",
+ "description": "Return the Chimp Chatter for this account ordered by most recent.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAccountExports",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_mailchimp_account_exports",
+ "description": {
+ "tagline": "Retrieve a list of account exports in Mailchimp.",
+ "detailed": "Call this tool to get a list of account exports for a Mailchimp account, useful for tracking or managing account data exports."
+ },
+ "return_annotation": "List of account exports for the specified Mailchimp account.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "specified_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for nested fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_field_list"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "alternative_names": [
+ "records_count",
+ "export_records_number"
+ ],
+ "description": "Specify the number of records to return. Defaults to 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "record_skip_count",
+ "start_position"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0, used to manage data retrieval position.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/account-exports",
+ "tags": [
+ "accountExports"
+ ],
+ "summary": "List account exports",
+ "description": "Get a list of account exports for a given account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAccountExport",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_account_export",
+ "description": {
+ "tagline": "Create a new account export in your Mailchimp account.",
+ "detailed": "This tool initiates a new export of account data in your Mailchimp account. Use this when you need to generate and download account information from Mailchimp."
+ },
+ "return_annotation": "Confirmation of account export creation.",
+ "arguments": [
+ {
+ "name": "include_export_stages",
+ "alternative_names": [
+ "export_stages_to_include",
+ "stages_for_export"
+ ],
+ "description": "Array of export stages to include in the account export.",
+ "endpoint_argument_name": "include_stages"
+ },
+ {
+ "name": "export_starting_date",
+ "alternative_names": [
+ "start_export_date",
+ "begin_export_date"
+ ],
+ "description": "An ISO 8601 date to limit export to records created after this time. Excludes audiences.",
+ "endpoint_argument_name": "since_timestamp"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/account-exports",
+ "tags": [
+ "accountExports"
+ ],
+ "summary": "Add export",
+ "description": "Create a new account export in your Mailchimp account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "include_stages",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stages of an account export to include."
+ },
+ "description": "The stages of an account export to include.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Include Stages",
+ "description": "The stages of an account export to include.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "audiences",
+ "campaigns",
+ "events",
+ "gallery_files",
+ "reports",
+ "templates"
+ ]
+ }
+ },
+ "schema_required": true
+ },
+ {
+ "name": "since_timestamp",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit."
+ },
+ "description": "An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Since Timestamp",
+ "description": "An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit.",
+ "format": "date-time",
+ "example": "2021-08-23T14:15:09Z"
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Create an account export\",\n \"description\": \"Creates an account export with the given parameters.\",\n \"required\": [\n \"include_stages\"\n ],\n \"properties\": {\n \"include_stages\": {\n \"type\": \"array\",\n \"title\": \"Include Stages\",\n \"description\": \"The stages of an account export to include.\",\n \"example\": \"[\\\"audiences\\\", \\\"gallery_files\\\"]\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": [\n \"audiences\",\n \"campaigns\",\n \"events\",\n \"gallery_files\",\n \"reports\",\n \"templates\"\n ]\n }\n },\n \"since_timestamp\": {\n \"type\": \"string\",\n \"title\": \"Since Timestamp\",\n \"format\": \"date-time\",\n \"description\": \"An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit.\",\n \"example\": \"2021-08-23T14:15:09Z\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAccountExportId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_account_export_info",
+ "description": {
+ "tagline": "Get information about a specific account export.",
+ "detailed": "Use this tool to retrieve details about a particular account export using the export ID. Ideal for checking the status or details of exports in Mailchimp."
+ },
+ "return_annotation": "Information about a specific account export.",
+ "arguments": [
+ {
+ "name": "account_export_id",
+ "alternative_names": [
+ "export_identifier",
+ "export_id_tool"
+ ],
+ "description": "The unique ID for the account export. Required to retrieve specific export details.",
+ "endpoint_argument_name": "export_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "returned_fields",
+ "specified_fields"
+ ],
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/account-exports/{export_id}",
+ "tags": [
+ "accountExport"
+ ],
+ "summary": "Get account export info",
+ "description": "Get information about a specific account export.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "export_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the account export."
+ },
+ "description": "The unique id for the account export.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAudienceContacts",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_audience_contacts",
+ "description": {
+ "tagline": "Retrieve all audience information from the account.",
+ "detailed": "Use this tool to get detailed information about every audience in the Mailchimp account, assisting in data management and marketing analysis."
+ },
+ "return_annotation": "Information about all audiences in the account.",
+ "arguments": [
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "return_fields",
+ "select_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "remove_fields_list"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_audience_records",
+ "audience_records_limit"
+ ],
+ "description": "The number of audience records to return, ranging from 1 to 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "pagination_skip",
+ "record_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/audiences",
+ "tags": [
+ "contacts"
+ ],
+ "summary": "Get a list of audiences",
+ "description": "Get information about all audiences in the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAudienceId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_audience_info",
+ "description": {
+ "tagline": "Retrieve information about a specific audience.",
+ "detailed": "Use this tool to get details about a specific audience in Mailchimp Marketing using the audience ID."
+ },
+ "return_annotation": "Information about a specific audience.",
+ "arguments": [
+ {
+ "name": "audience_id",
+ "alternative_names": [
+ "audience_unique_id",
+ "audience_identifier"
+ ],
+ "description": "The unique ID of the audience to retrieve information for.",
+ "endpoint_argument_name": "audience_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "requested_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A list of fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/audiences/{audience_id}",
+ "tags": [
+ "contacts"
+ ],
+ "summary": "Get audience info",
+ "description": "Get information about a specific audience.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "audience_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAudienceContactList",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "retrieve_audience_contact_list",
+ "description": {
+ "tagline": "Retrieve contacts for a specific marketing audience.",
+ "detailed": "Use this tool to obtain a list of omni-channel contacts associated with a particular audience in your marketing campaigns."
+ },
+ "return_annotation": "List of omni-channel contacts for a specified audience.",
+ "arguments": [
+ {
+ "name": "audience_id",
+ "alternative_names": [
+ "audience_identifier",
+ "target_audience_id"
+ ],
+ "description": "The unique identifier for the specific audience to retrieve contacts. Ensure this ID corresponds to an existing audience.",
+ "endpoint_argument_name": "audience_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "specific_fields",
+ "desired_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "fields_to_exclude"
+ ],
+ "description": "Comma-separated fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "max_records"
+ ],
+ "description": "Specifies how many records to return, from 10 to 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_cursor",
+ "alternative_names": [
+ "next_page_cursor",
+ "result_cursor"
+ ],
+ "description": "Paginate through records using a `next_cursor` from a previous request. By default, fetches the first page.",
+ "endpoint_argument_name": "cursor"
+ },
+ {
+ "name": "created_before_datetime",
+ "alternative_names": [
+ "created_before_time",
+ "filter_by_creation_date"
+ ],
+ "description": "Restricts the response to contacts created at or before the specified time. Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.",
+ "endpoint_argument_name": "created_before"
+ },
+ {
+ "name": "created_since",
+ "alternative_names": [
+ "created_after",
+ "created_from"
+ ],
+ "description": "Restrict contacts to those created after this timestamp (exclusive). Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.",
+ "endpoint_argument_name": "created_since"
+ },
+ {
+ "name": "restrict_by_update_date_before",
+ "alternative_names": [
+ "filter_by_updated_before",
+ "limit_by_updated_before_date"
+ ],
+ "description": "Restricts the response to contacts updated at or before the specified date and time, using ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.",
+ "endpoint_argument_name": "updated_before"
+ },
+ {
+ "name": "updated_since",
+ "alternative_names": [
+ "since_last_update",
+ "filter_by_update_time"
+ ],
+ "description": "Restrict response to contacts updated after this time using ISO 8601 format (exclusive).",
+ "endpoint_argument_name": "updated_since"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/audiences/{audience_id}/contacts",
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "summary": "Get Contacts",
+ "description": "Get a list of omni-channel contacts for a given audience.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cursor",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Paginate through a collection of records by setting the `cursor` parameter to a `next_cursor` attribute returned by a previous request. Default value fetches the first \"page\" of results."
+ },
+ "description": "Paginate through a collection of records by setting the `cursor` parameter to a `next_cursor` attribute returned by a previous request. Default value fetches the first \"page\" of results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "created_before",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts created at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "description": "Restricts the response to contacts created at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "created_since",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts created after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "description": "Restricts the response to contacts created after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "updated_before",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts updated at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "description": "Restricts the response to contacts updated at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "updated_since",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts updated after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "description": "Restricts the response to contacts updated after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "audience_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "createAudienceContact",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_audience_contact",
+ "description": {
+ "tagline": "Create a new omni-channel contact for an audience.",
+ "detailed": "Use this tool to add a new contact to a Mailchimp audience for omni-channel marketing."
+ },
+ "return_annotation": "Details of the newly created audience contact.",
+ "arguments": [
+ {
+ "name": "audience_unique_id",
+ "alternative_names": [
+ "audience_identifier",
+ "list_id"
+ ],
+ "description": "The unique identifier for the audience in Mailchimp where the contact will be added. This ID is necessary to specify the target audience for the new contact.",
+ "endpoint_argument_name": "audience_id"
+ },
+ {
+ "name": "contact_details_json",
+ "alternative_names": [
+ "contact_data_json",
+ "new_contact_info"
+ ],
+ "description": "JSON object containing contact details such as language, email, SMS info, merge fields, and tags for the new audience member.",
+ "endpoint_argument_name": "requestBody"
+ },
+ {
+ "name": "merge_field_validation_mode",
+ "alternative_names": [
+ "validation_mode",
+ "field_validation_mode"
+ ],
+ "description": "Choose 'ignore_required_checks' to skip validation on required merge fields, or 'strict' to enforce validation. Defaults to 'strict' if not set.",
+ "endpoint_argument_name": "merge_field_validation_mode"
+ },
+ {
+ "name": "data_processing_mode",
+ "alternative_names": [
+ "contact_data_mode",
+ "audience_data_mode"
+ ],
+ "description": "Selects the data processing mode: 'historical' mode skips automations and webhooks, 'live' mode triggers them.",
+ "endpoint_argument_name": "data_mode"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/audiences/{audience_id}/contacts",
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "summary": "Add Contact",
+ "description": "Create a new omni-channel contact for an audience.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "merge_field_validation_mode",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default."
+ },
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "data_mode",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them."
+ },
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "audience_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscribers detected language."
+ },
+ "email_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "confirmed",
+ "consented",
+ "denied",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Status of a contacts Marketing Consent"
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "sms_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sms_phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "SMS Phone Number"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "confirmed",
+ "consented",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The current consent status captured for a contact\u2019s marketing communications."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "example": "EN"
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "marketing_consent": {
+ "type": "object",
+ "title": "Marketing Consent Details",
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "description": "Status of a contacts Marketing Consent",
+ "enum": [
+ "confirmed",
+ "consented",
+ "denied",
+ "unknown"
+ ],
+ "example": "confirmed"
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+16155550128"
+ },
+ "marketing_consent": {
+ "type": "object",
+ "title": "Marketing Consent Details",
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "description": "The current consent status captured for a contact\u2019s marketing communications.",
+ "enum": [
+ "confirmed",
+ "consented",
+ "unknown"
+ ],
+ "example": "confirmed"
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "properties": {},
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name"
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"description\": \"An instance of a contact.\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The subscribers detected language.\",\n \"example\": \"EN\"\n },\n \"email_channel\": {\n \"type\": \"object\",\n \"title\": \"Email Channel Details\",\n \"properties\": {\n \"email\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address\",\n \"example\": \"example@freddiemail.com\"\n },\n \"marketing_consent\": {\n \"type\": \"object\",\n \"title\": \"Marketing Consent Details\",\n \"description\": \"A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"description\": \"Status of a contacts Marketing Consent\",\n \"enum\": [\n \"confirmed\",\n \"consented\",\n \"denied\",\n \"unknown\"\n ],\n \"example\": \"confirmed\"\n }\n }\n }\n }\n },\n \"sms_channel\": {\n \"type\": \"object\",\n \"title\": \"SMS Channel Details\",\n \"properties\": {\n \"sms_phone\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"SMS Phone Number\",\n \"example\": \"+16155550128\"\n },\n \"marketing_consent\": {\n \"type\": \"object\",\n \"title\": \"Marketing Consent Details\",\n \"description\": \"A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"description\": \"The current consent status captured for a contact\\u2019s marketing communications.\",\n \"enum\": [\n \"confirmed\",\n \"consented\",\n \"unknown\"\n ],\n \"example\": \"confirmed\"\n }\n }\n }\n }\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags\",\n \"description\": \"An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.\",\n \"items\": {\n \"type\": \"string\",\n \"title\": \"Tag Name\"\n },\n \"example\": [\n \"new_tag\",\n \"another_tag\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAudienceContact",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "retrieve_audience_contact",
+ "description": {
+ "tagline": "Retrieve a specific omni-channel contact in an audience.",
+ "detailed": ""
+ },
+ "return_annotation": "Details of a specific omni-channel contact.",
+ "arguments": [
+ {
+ "name": "audience_unique_id",
+ "alternative_names": [
+ "audience_identifier",
+ "unique_audience_id"
+ ],
+ "description": "The unique ID for the audience to retrieve the contact from.",
+ "endpoint_argument_name": "audience_id"
+ },
+ {
+ "name": "unique_contact_identifier",
+ "alternative_names": [
+ "contact_unique_id",
+ "channel_hash_id"
+ ],
+ "description": "A unique identifier for the contact, either a Mailchimp contact ID or a channel hash. Format: email:[md5_hash] for emails or sms:[sha256_hash] for phone numbers.",
+ "endpoint_argument_name": "contact_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "included_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects, when retrieving contact details.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/audiences/{audience_id}/contacts/{contact_id}",
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "summary": "Get Contact",
+ "description": "Retrieve a specific omni-channel contact in an audience.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "audience_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "contact_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the contact, which can be a Mailchimp contact ID or a channel hash. A channel hash must follow the format email:[md5_hash] (where the hash is the MD5 of the lowercased email address) or sms:[sha256_hash] (where the hash is the SHA256 of the E.164-formatted phone number)."
+ },
+ "description": "A unique identifier for the contact, which can be a Mailchimp contact ID or a channel hash. A channel hash must follow the format email:[md5_hash] (where the hash is the MD5 of the lowercased email address) or sms:[sha256_hash] (where the hash is the SHA256 of the E.164-formatted phone number).",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchAudienceContact",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_contact_information",
+ "description": {
+ "tagline": "Update information for an existing contact.",
+ "detailed": "Use this tool to update the details of an existing omni-channel contact in a specified audience in Mailchimp. Ideal for modifying contact information such as email, name, or other personal details."
+ },
+ "return_annotation": "Details of the updated contact.",
+ "arguments": [
+ {
+ "name": "audience_id",
+ "alternative_names": [
+ "audience_identifier",
+ "audience_unique_id"
+ ],
+ "description": "The unique ID for the audience to be updated.",
+ "endpoint_argument_name": "audience_id"
+ },
+ {
+ "name": "contact_id",
+ "alternative_names": [
+ "contact_identifier",
+ "contact_unique_id"
+ ],
+ "description": "The unique ID for the contact to be updated.",
+ "endpoint_argument_name": "contact_id"
+ },
+ {
+ "name": "contact_details",
+ "alternative_names": [
+ "contact_information",
+ "contact_data"
+ ],
+ "description": "The JSON object containing details to update, such as language, email, SMS, merge fields, and tags for the contact. Include appropriate consent statuses and sources.",
+ "endpoint_argument_name": "requestBody"
+ },
+ {
+ "name": "merge_field_validation_mode",
+ "alternative_names": [
+ "merge_field_check_mode",
+ "field_validation_mode"
+ ],
+ "description": "Specifies how merge field validation is handled. Options: `ignore_required_checks` (no error if fields missing), `strict` (errors if required fields not provided). Default is `strict`.",
+ "endpoint_argument_name": "merge_field_validation_mode"
+ },
+ {
+ "name": "data_processing_mode",
+ "alternative_names": [
+ "processing_mode",
+ "contact_data_mode"
+ ],
+ "description": "Specify `historical` to prevent triggering automations/webhooks, or `live` to trigger them for contact data changes.",
+ "endpoint_argument_name": "data_mode"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/audiences/{audience_id}/contacts/{contact_id}",
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "summary": "Update Contact",
+ "description": "Update an existing omni-channel contact.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "merge_field_validation_mode",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default."
+ },
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "data_mode",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them."
+ },
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "audience_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "contact_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "description": "The unique id for the contact.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscribers detected language."
+ },
+ "email_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ },
+ "source": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the entity's source"
+ }
+ },
+ "inner_properties": null,
+ "description": "The source from which the parent's entity was created from."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "sms_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sms_phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "SMS Phone Number"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ },
+ "source": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the entity's source"
+ }
+ },
+ "inner_properties": null,
+ "description": "The source from which the parent's entity was created from."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "example": "EN"
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "marketing_consent": {
+ "type": "object",
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+16155550128"
+ },
+ "marketing_consent": {
+ "type": "object",
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "properties": {},
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name"
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"description\": \"An instance of a contact.\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The subscribers detected language.\",\n \"example\": \"EN\"\n },\n \"email_channel\": {\n \"type\": \"object\",\n \"title\": \"Email Channel Details\",\n \"properties\": {\n \"email\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address\",\n \"example\": \"example@freddiemail.com\"\n },\n \"marketing_consent\": {\n \"description\": \"A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"type\": \"object\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"enum\": [\n \"consented\",\n \"denied\",\n \"confirmed\",\n \"unknown\"\n ]\n },\n \"source\": {\n \"type\": \"object\",\n \"title\": \"Source\",\n \"description\": \"The source from which the parent's entity was created from.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Entity source name\",\n \"description\": \"The name of the entity's source\"\n }\n }\n }\n }\n }\n }\n },\n \"sms_channel\": {\n \"type\": \"object\",\n \"title\": \"SMS Channel Details\",\n \"properties\": {\n \"sms_phone\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"SMS Phone Number\",\n \"example\": \"+16155550128\"\n },\n \"marketing_consent\": {\n \"description\": \"A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"type\": \"object\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"enum\": [\n \"consented\",\n \"confirmed\",\n \"unknown\"\n ]\n },\n \"source\": {\n \"type\": \"object\",\n \"title\": \"Source\",\n \"description\": \"The source from which the parent's entity was created from.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Entity source name\",\n \"description\": \"The name of the entity's source\"\n }\n }\n }\n }\n }\n }\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags\",\n \"description\": \"An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.\",\n \"items\": {\n \"type\": \"string\",\n \"title\": \"Tag Name\"\n },\n \"example\": [\n \"tag_to_add_1\",\n \"tag_to_add_2\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAudiencesContactsActionsArchive",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "archive_contact_mailchimp",
+ "description": {
+ "tagline": "Archives a contact in a Mailchimp audience.",
+ "detailed": "This tool archives a specific contact within a given audience in Mailchimp. Use this when you need to remove a contact from active participation without deleting them permanently."
+ },
+ "return_annotation": "Confirmation of contact archive operation.",
+ "arguments": [
+ {
+ "name": "audience_unique_id",
+ "alternative_names": [
+ "audience_id_key",
+ "unique_audience_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp audience where the contact will be archived.",
+ "endpoint_argument_name": "audience_id"
+ },
+ {
+ "name": "contact_id",
+ "alternative_names": [
+ "contact_identifier",
+ "contact_unique_id"
+ ],
+ "description": "The unique identifier for the contact to archive within the audience in Mailchimp.",
+ "endpoint_argument_name": "contact_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/audiences/{audience_id}/contacts/{contact_id}/actions/archive",
+ "tags": [
+ "contacts"
+ ],
+ "summary": "Archive Contact",
+ "description": "Archives a Contact.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "audience_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "contact_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "description": "The unique id for the contact.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAudiencesContactsActionsForget",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "forget_contact",
+ "description": {
+ "tagline": "Forget a contact in the audience list.",
+ "detailed": "Use this tool to erase a contact's data from a specified audience in Mailchimp, ensuring the contact is forgotten."
+ },
+ "return_annotation": "Confirmation of the contact being forgotten.",
+ "arguments": [
+ {
+ "name": "audience_id",
+ "alternative_names": [
+ "list_id",
+ "group_id"
+ ],
+ "description": "The unique ID for the audience where the contact should be forgotten.",
+ "endpoint_argument_name": "audience_id"
+ },
+ {
+ "name": "contact_id",
+ "alternative_names": [
+ "contact_identifier",
+ "member_id"
+ ],
+ "description": "The unique ID of the contact to be forgotten from the audience.",
+ "endpoint_argument_name": "contact_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/audiences/{audience_id}/contacts/{contact_id}/actions/forget",
+ "tags": [
+ "contacts"
+ ],
+ "summary": "Forget Contact",
+ "description": "Forgets a Contact.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "audience_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "contact_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "description": "The unique id for the contact.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAuthorizedApps",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_connected_apps",
+ "description": {
+ "tagline": "Retrieve registered connected applications for an account.",
+ "detailed": "Use this tool to get a list of applications that are registered and connected to a Mailchimp account."
+ },
+ "return_annotation": "List of connected applications for a Mailchimp account.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "requested_fields",
+ "included_fields"
+ ],
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response, referencing sub-objects with dot notation.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "return_records_limit"
+ ],
+ "description": "Specify the number of records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "result_offset"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/authorized-apps",
+ "tags": [
+ "authorizedApps"
+ ],
+ "summary": "List authorized apps",
+ "description": "Get a list of an account's registered, connected applications.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAuthorizedAppsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_authorized_app_info",
+ "description": {
+ "tagline": "Retrieve details of a specific authorized application.",
+ "detailed": "This tool retrieves information about a specific authorized application using the app ID. It is useful for checking the details or status of an application authorized within Mailchimp."
+ },
+ "return_annotation": "Information about a specific authorized application.",
+ "arguments": [
+ {
+ "name": "authorized_application_id",
+ "alternative_names": [
+ "app_identifier",
+ "application_id"
+ ],
+ "description": "The unique ID for the connected authorized application to retrieve its information.",
+ "endpoint_argument_name": "app_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "requested_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "exclude_field_list",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object references.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/authorized-apps/{app_id}",
+ "tags": [
+ "authorizedApps"
+ ],
+ "summary": "Get authorized app info",
+ "description": "Get information about a specific authorized application.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "app_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the connected authorized application."
+ },
+ "description": "The unique id for the connected authorized application.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomations",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_classic_automations_summary",
+ "description": {
+ "tagline": "Fetch a summary of an account's classic automations.",
+ "detailed": "Call this tool to obtain a summary of classic automations set up in a Mailchimp account, useful for understanding automation configurations and statuses."
+ },
+ "return_annotation": "Provides a summary of classic automations for an account.",
+ "arguments": [
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "return_count"
+ ],
+ "description": "The number of automation records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "record_offset"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_to_include",
+ "included_fields"
+ ],
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "restrict_before_create_time",
+ "alternative_names": [
+ "limit_before_creation_date",
+ "filter_before_create_time"
+ ],
+ "description": "Restrict the response to automations created before the specified time in ISO 8601 format. Example: 2015-10-21T15:41:36+00:00.",
+ "endpoint_argument_name": "before_create_time"
+ },
+ {
+ "name": "created_after_time",
+ "alternative_names": [
+ "start_creation_time",
+ "automation_since_time"
+ ],
+ "description": "Specify the time to filter automations created after this date-time. Use ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00.",
+ "endpoint_argument_name": "since_create_time"
+ },
+ {
+ "name": "restrict_to_automations_started_before",
+ "alternative_names": [
+ "limit_start_time_before",
+ "automations_started_before"
+ ],
+ "description": "Restrict the response to automations started before this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "before_start_time"
+ },
+ {
+ "name": "start_time_after",
+ "alternative_names": [
+ "started_after_time",
+ "automation_start_after"
+ ],
+ "description": "Restrict the response to automations started after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_start_time"
+ },
+ {
+ "name": "automation_status_filter",
+ "alternative_names": [
+ "automation_status_restriction",
+ "filter_by_status"
+ ],
+ "description": "Specify the status of automations to filter results (e.g., 'active', 'paused').",
+ "endpoint_argument_name": "status"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations",
+ "tags": [
+ "automations"
+ ],
+ "summary": "List automations",
+ "description": "Get a summary of an account's classic automations.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_create_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations created before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to automations created before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_create_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations created after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to automations created after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_start_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations started before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to automations started before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_start_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations started after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to automations started after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "status",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the results to automations with the specified status."
+ },
+ "description": "Restrict the results to automations with the specified status.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAutomations",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_automation",
+ "description": {
+ "tagline": "Create a new classic automation in Mailchimp.",
+ "detailed": "This tool initiates the creation of a new classic automation within your Mailchimp account, facilitating automated email campaigns."
+ },
+ "return_annotation": "Confirmation of new automation creation.",
+ "arguments": [
+ {
+ "name": "automation_workflow_type",
+ "alternative_names": [
+ "workflow_type",
+ "campaign_workflow_type"
+ ],
+ "description": "Specify the type of Automation workflow. Currently, only 'abandonedCart' is supported.",
+ "endpoint_argument_name": "trigger_settings.workflow_type"
+ },
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "automation_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp List to target with the automation.",
+ "endpoint_argument_name": "recipients.list_id"
+ },
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store in Mailchimp. Required to target specific automation to a store.",
+ "endpoint_argument_name": "recipients.store_id"
+ },
+ {
+ "name": "automation_from_name",
+ "alternative_names": [
+ "sender_name",
+ "email_from_name"
+ ],
+ "description": "The 'from' name to display in the new automation emails. It should be an easily recognizable name for recipients.",
+ "endpoint_argument_name": "settings.from_name"
+ },
+ {
+ "name": "reply_to_email_address",
+ "alternative_names": [
+ "response_email_address",
+ "email_reply_to"
+ ],
+ "description": "The reply-to email address for the automation in Mailchimp.",
+ "endpoint_argument_name": "settings.reply_to"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Add automation",
+ "description": "Create a new classic automation in your Mailchimp account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "recipients.list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the List."
+ },
+ "description": "The id of the List.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The id of the List.",
+ "example": "1a2df69xxx"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "recipients.store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the store."
+ },
+ "description": "The id of the store.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The id of the store.",
+ "example": "1a2df69xxx"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "settings.from_name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "description": "The 'from' name for the Automation (not an email address).",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "settings.reply_to",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the Automation."
+ },
+ "description": "The reply-to email address for the Automation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the Automation."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "trigger_settings.workflow_type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of Automation workflow. Currently only supports 'abandonedCart'."
+ },
+ "description": "The type of Automation workflow. Currently only supports 'abandonedCart'.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow. Currently only supports 'abandonedCart'."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Automation Workflow\",\n \"description\": \"A summary of an individual Automation workflow's settings and content.\",\n \"required\": [\n \"recipients\",\n \"trigger_settings\"\n ],\n \"properties\": {\n \"recipients\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"List settings for the Automation.\",\n \"properties\": {\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The id of the List.\",\n \"example\": \"1a2df69xxx\"\n },\n \"store_id\": {\n \"type\": \"string\",\n \"title\": \"Store ID\",\n \"description\": \"The id of the store.\",\n \"example\": \"1a2df69xxx\"\n }\n }\n },\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Automation Campaign Settings\",\n \"description\": \"The settings for the Automation workflow.\",\n \"properties\": {\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name for the Automation (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the Automation.\"\n }\n }\n },\n \"trigger_settings\": {\n \"type\": \"object\",\n \"title\": \"Automation Trigger\",\n \"description\": \"Trigger settings for the Automation.\",\n \"required\": [\n \"workflow_type\"\n ],\n \"properties\": {\n \"workflow_type\": {\n \"type\": \"string\",\n \"title\": \"Workflow Type\",\n \"description\": \"The type of Automation workflow. Currently only supports 'abandonedCart'.\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomationsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_automation_summary",
+ "description": {
+ "tagline": "Retrieve details of a specific classic automation workflow.",
+ "detailed": "This tool fetches a summary of an individual classic automation workflow's settings and content, including trigger settings for the first email."
+ },
+ "return_annotation": "Summary of a classic automation workflow's settings and content.",
+ "arguments": [
+ {
+ "name": "workflow_id",
+ "alternative_names": [
+ "automation_workflow_id",
+ "workflow_identifier"
+ ],
+ "description": "The unique ID for the automation workflow to retrieve its summary.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_workflow_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the automation workflow details. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations/{workflow_id}",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Get automation info",
+ "description": "Get a summary of an individual classic automation workflow's settings and content. The `trigger_settings` object returns information for the first email in the workflow.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAutomationsIdActionsPauseAllEmails",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "pause_automation_emails",
+ "description": {
+ "tagline": "Pause emails in a specific automation workflow.",
+ "detailed": "Use this tool to pause all emails in a specified classic automation workflow in Mailchimp. Ideal for temporarily halting scheduled email deliveries."
+ },
+ "return_annotation": "Confirmation of the paused email automation.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "email_workflow_id",
+ "automation_id"
+ ],
+ "description": "The unique identifier for the specific automation workflow to be paused.",
+ "endpoint_argument_name": "workflow_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations/{workflow_id}/actions/pause-all-emails",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Pause automation emails",
+ "description": "Pause all emails in a specific classic automation workflow.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAutomationsIdActionsStartAllEmails",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "start_mailchimp_automation_emails",
+ "description": {
+ "tagline": "Start all emails in a Mailchimp automation workflow.",
+ "detailed": "Use this tool to initiate all emails within a specified classic automation workflow in Mailchimp. It should be called when you want to activate a pre-configured sequence of emails in a marketing campaign."
+ },
+ "return_annotation": "Confirmation of starting all emails in the workflow.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique identifier for the Mailchimp automation workflow to be started.",
+ "endpoint_argument_name": "workflow_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations/{workflow_id}/actions/start-all-emails",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Start automation emails",
+ "description": "Start all emails in a classic automation workflow.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "archiveAutomations",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "archive_mailchimp_automation",
+ "description": {
+ "tagline": "Permanently archive a Mailchimp automation.",
+ "detailed": "Use this tool to permanently archive a Mailchimp automation workflow. Once archived, the automation cannot be restarted, but the report data will be kept. You can replicate the archived automation if needed."
+ },
+ "return_annotation": "Confirmation of the archived Mailchimp automation.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "mailchimp_workflow_id"
+ ],
+ "description": "The unique identifier for the Mailchimp automation workflow to archive. This ID is necessary to specify which automation you want to permanently end.",
+ "endpoint_argument_name": "workflow_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations/{workflow_id}/actions/archive",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Archive automation",
+ "description": "Archiving will permanently end your automation and keep the report data. You\u2019ll be able to replicate your archived automation, but you can\u2019t restart it.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomationsIdEmails",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_automation_emails_summary",
+ "description": {
+ "tagline": "Get a summary of emails in an automation workflow.",
+ "detailed": "Use this tool to retrieve a summary of all emails within a specified classic automation workflow. Call this tool when you need detailed insights into the automation process."
+ },
+ "return_annotation": "Summary of emails in a classic automation workflow.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "automation_id",
+ "workflow_identifier"
+ ],
+ "description": "The unique ID of the automation workflow to retrieve the email summary for.",
+ "endpoint_argument_name": "workflow_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations/{workflow_id}/emails",
+ "tags": [
+ "automations"
+ ],
+ "summary": "List automated emails",
+ "description": "Get a summary of the emails in a classic automation workflow.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomationsIdEmailsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_automation_email_info",
+ "description": {
+ "tagline": "Retrieve details of a specific classic automation email.",
+ "detailed": "Use this tool to get detailed information about a specific email within a classic automation workflow in Mailchimp Marketing."
+ },
+ "return_annotation": "Information about a specific automation workflow email.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique ID for the automation workflow.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "automation_email_unique_id",
+ "alternative_names": [
+ "email_workflow_id",
+ "workflow_email_unique_id"
+ ],
+ "description": "The unique identifier for the Automation workflow email in Mailchimp.",
+ "endpoint_argument_name": "workflow_email_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Get workflow email info",
+ "description": "Get information about an individual classic automation workflow email.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteAutomationsIdEmailsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "remove_classic_automation_email",
+ "description": {
+ "tagline": "Removes a specified classic automation workflow email.",
+ "detailed": "Use this tool to remove a specific classic automation email from a workflow. Note that emails from certain workflow types, such as Abandoned Cart and Product Retargeting, cannot be deleted."
+ },
+ "return_annotation": "Confirmation of the email removal from the automation workflow.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_unique_id",
+ "automation_id"
+ ],
+ "description": "The unique identifier for the Automation workflow to target for email removal.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "alternative_names": [
+ "workflow_email_unique_id",
+ "email_identifier"
+ ],
+ "description": "The unique identifier for the specific automation workflow email to be removed.",
+ "endpoint_argument_name": "workflow_email_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Delete workflow email",
+ "description": "Removes an individual classic automation workflow email. Emails from certain workflow types, including the Abandoned Cart Email (abandonedCart) and Product Retargeting Email (abandonedBrowse) Workflows, cannot be deleted.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchAutomationEmailWorkflowId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_automation_email_settings",
+ "description": {
+ "tagline": "Update settings for a classic automation workflow email.",
+ "detailed": "Use this tool to update the settings of a specific email in a classic automation workflow in Mailchimp. Applicable for workflows of type: abandonedBrowse, abandonedCart, emailFollowup, or singleWelcome."
+ },
+ "return_annotation": "Confirmation of updated email settings for the workflow.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique identifier for the Automation workflow to be updated.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "alternative_names": [
+ "workflow_email_identifier",
+ "email_workflow_id"
+ ],
+ "description": "The unique ID for the Automation workflow email to update.",
+ "endpoint_argument_name": "workflow_email_id"
+ },
+ {
+ "name": "automation_email_settings",
+ "alternative_names": [
+ "email_config",
+ "workflow_email_options"
+ ],
+ "description": "JSON object with settings such as subject line, preview text, title, from name, reply-to email, and delay configurations. Used to update automation email settings.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Update workflow email",
+ "description": "Update settings for a classic automation workflow email. Only works with workflows of type: abandonedBrowse, abandonedCart, emailFollowup, or singleWelcome.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the Automation."
+ }
+ },
+ "inner_properties": null,
+ "description": "Settings for the campaign including the email subject, from name, and from email address."
+ },
+ "delay": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "amount": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The delay amount for an automation email."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of delay for an automation email."
+ },
+ "direction": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "after"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the delay settings describe before or after the delay action of an automation email."
+ },
+ "action": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup",
+ "ecomm_abandoned_browse",
+ "ecomm_abandoned_cart"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The action that triggers the delay of an automation emails."
+ }
+ },
+ "inner_properties": null,
+ "description": "The delay settings for an automation email."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Update information about a specific workflow email",
+ "description": "Update information about an individual Automation workflow email.",
+ "properties": {
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "Settings for the campaign including the email subject, from name, and from email address.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Automation Title",
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the Automation."
+ }
+ }
+ },
+ "delay": {
+ "type": "object",
+ "title": "Automation Delay",
+ "description": "The delay settings for an automation email.",
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "title": "Delay Amount",
+ "description": "The delay amount for an automation email.",
+ "example": 1
+ },
+ "type": {
+ "type": "string",
+ "title": "Delay Type",
+ "description": "The type of delay for an automation email.",
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "example": "day"
+ },
+ "direction": {
+ "type": "string",
+ "title": "Delay Direction",
+ "description": "Whether the delay settings describe before or after the delay action of an automation email.",
+ "enum": [
+ "after"
+ ],
+ "example": "after"
+ },
+ "action": {
+ "type": "string",
+ "title": "Delay Action",
+ "description": "The action that triggers the delay of an automation emails.",
+ "enum": [
+ "signup",
+ "ecomm_abandoned_browse",
+ "ecomm_abandoned_cart"
+ ],
+ "example": "signup"
+ }
+ },
+ "required": [
+ "action"
+ ]
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Update information about a specific workflow email\",\n \"description\": \"Update information about an individual Automation workflow email.\",\n \"properties\": {\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Campaign Settings\",\n \"description\": \"Settings for the campaign including the email subject, from name, and from email address.\",\n \"properties\": {\n \"subject_line\": {\n \"type\": \"string\",\n \"title\": \"Campaign Subject Line\",\n \"description\": \"The subject line for the campaign.\"\n },\n \"preview_text\": {\n \"type\": \"string\",\n \"title\": \"Campaign Preview Text\",\n \"description\": \"The preview text for the campaign.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Automation Title\",\n \"description\": \"The title of the Automation.\"\n },\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name for the Automation (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the Automation.\"\n }\n }\n },\n \"delay\": {\n \"type\": \"object\",\n \"title\": \"Automation Delay\",\n \"description\": \"The delay settings for an automation email.\",\n \"required\": [\n \"action\"\n ],\n \"properties\": {\n \"amount\": {\n \"type\": \"integer\",\n \"title\": \"Delay Amount\",\n \"description\": \"The delay amount for an automation email.\",\n \"example\": 1\n },\n \"type\": {\n \"type\": \"string\",\n \"enum\": [\n \"now\",\n \"day\",\n \"hour\",\n \"week\"\n ],\n \"title\": \"Delay Type\",\n \"description\": \"The type of delay for an automation email.\",\n \"example\": \"day\"\n },\n \"direction\": {\n \"type\": \"string\",\n \"title\": \"Delay Direction\",\n \"description\": \"Whether the delay settings describe before or after the delay action of an automation email.\",\n \"enum\": [\n \"after\"\n ],\n \"example\": \"after\"\n },\n \"action\": {\n \"type\": \"string\",\n \"title\": \"Delay Action\",\n \"description\": \"The action that triggers the delay of an automation emails.\",\n \"enum\": [\n \"signup\",\n \"ecomm_abandoned_browse\",\n \"ecomm_abandoned_cart\"\n ],\n \"example\": \"signup\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomationsIdEmailsIdQueue",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_automation_email_queue_info",
+ "description": {
+ "tagline": "Retrieve details of a classic automation email queue in Mailchimp.",
+ "detailed": "This tool retrieves information about a classic automation email queue in Mailchimp. It should be called when you need details about queued emails for a specific automation workflow and email."
+ },
+ "return_annotation": "Information about a classic automation email queue.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique ID for the Automation workflow to obtain the email queue details.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "alternative_names": [
+ "email_workflow_id",
+ "automation_email_id"
+ ],
+ "description": "The unique ID for the automation workflow email.",
+ "endpoint_argument_name": "workflow_email_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}/queue",
+ "tags": [
+ "automations"
+ ],
+ "summary": "List automated email subscribers",
+ "description": "Get information about a classic automation email queue.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAutomationsIdEmailsIdQueue",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_subscriber_to_workflow",
+ "description": {
+ "tagline": "Add a subscriber to an automation workflow.",
+ "detailed": "Use this tool to manually add a subscriber to a Mailchimp workflow, bypassing default triggers, or to initiate a series of automated emails."
+ },
+ "return_annotation": "Confirmation of subscriber added to the automation queue.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique identifier for the Automation workflow to which the subscriber will be added.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "workflow_email_id",
+ "alternative_names": [
+ "automation_email_unique_id",
+ "email_workflow_id"
+ ],
+ "description": "The unique ID for the Automation workflow email. Required to identify the specific email in the workflow.",
+ "endpoint_argument_name": "workflow_email_id"
+ },
+ {
+ "name": "subscriber_email_address",
+ "alternative_names": [
+ "member_email",
+ "email_contact_address"
+ ],
+ "description": "The email address of the subscriber to add to the automation workflow.",
+ "endpoint_argument_name": "email_address"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}/queue",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Add subscriber to workflow email",
+ "description": "Manually add a subscriber to a workflow, bypassing the default trigger settings. You can also use this endpoint to trigger a series of automated emails in an API 3.0 workflow type.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "email_address",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "description": "The list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber in Automation Queue\",\n \"description\": \"Information about subscribers in an Automation email queue.\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The list member's email address.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomationsIdEmailsIdQueueId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_automation_subscriber_info",
+ "description": {
+ "tagline": "Get details of a subscriber in an automation email queue.",
+ "detailed": "This tool retrieves information about a specific subscriber within the queue of a classic automation email in Mailchimp. Use this when you need to access details about how a subscriber is queued in a specific workflow email."
+ },
+ "return_annotation": "Information about a specific subscriber in an automation email queue.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique ID for the Automation workflow in Mailchimp.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "alternative_names": [
+ "workflow_email_unique_id",
+ "automation_email_id"
+ ],
+ "description": "The unique ID for the Automation workflow email in Mailchimp.",
+ "endpoint_argument_name": "workflow_email_id"
+ },
+ {
+ "name": "subscriber_email_md5_hash",
+ "alternative_names": [
+ "email_md5_hash",
+ "hashed_email_address"
+ ],
+ "description": "The MD5 hash of the lowercase version of the subscriber's email address in the list.",
+ "endpoint_argument_name": "subscriber_hash"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}/queue/{subscriber_hash}",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Get automated email subscriber",
+ "description": "Get information about a specific subscriber in a classic automation email queue.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAutomationsIdEmailsIdActionsPause",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "pause_automated_email",
+ "description": {
+ "tagline": "Pause an automated email in a Mailchimp workflow.",
+ "detailed": "Use this tool to pause a specific automated email within a Mailchimp automation workflow. This can be useful when you need to temporarily stop sending an ongoing sequence."
+ },
+ "return_annotation": "Confirmation of paused automated email.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique ID for the Mailchimp automation workflow to pause.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "alternative_names": [
+ "email_workflow_id",
+ "automation_email_id"
+ ],
+ "description": "The unique ID for the automation workflow email to be paused.",
+ "endpoint_argument_name": "workflow_email_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}/actions/pause",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Pause automated email",
+ "description": "Pause an automated email.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAutomationsIdEmailsIdActionsStart",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "start_automated_email",
+ "description": {
+ "tagline": "Initiate an automated email in Mailchimp.",
+ "detailed": "Use this tool to begin sending an automated email within a specific Mailchimp workflow. Useful for starting email campaigns based on predefined automation workflows."
+ },
+ "return_annotation": "Confirmation of the automated email start action.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "email_workflow_id",
+ "automation_id"
+ ],
+ "description": "The unique identifier for the Automation workflow in Mailchimp.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "automation_email_id",
+ "alternative_names": [
+ "workflow_email_identifier",
+ "email_task_id"
+ ],
+ "description": "The unique ID for the specific email in the automation workflow to be started.",
+ "endpoint_argument_name": "workflow_email_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations/{workflow_id}/emails/{workflow_email_id}/actions/start",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Start automated email",
+ "description": "Start an automated email.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "workflow_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "description": "The unique id for the Automation workflow email.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomationsIdRemovedSubscribers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_removed_automation_subscribers",
+ "description": {
+ "tagline": "Get details on subscribers removed from automation workflows.",
+ "detailed": "Use this tool to obtain information about subscribers who have been removed from a specific classic automation workflow in Mailchimp."
+ },
+ "return_annotation": "Information about subscribers removed from a classic automation workflow.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique ID for identifying the specific automation workflow in Mailchimp.",
+ "endpoint_argument_name": "workflow_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations/{workflow_id}/removed-subscribers",
+ "tags": [
+ "automations"
+ ],
+ "summary": "List subscribers removed from workflow",
+ "description": "Get information about subscribers who were removed from a classic automation workflow.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAutomationsIdRemovedSubscribers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "remove_subscriber_from_workflow",
+ "description": {
+ "tagline": "Remove a subscriber from a Mailchimp automation workflow.",
+ "detailed": "This tool removes a subscriber from a specified Mailchimp classic automation workflow at any point, ensuring they cannot be re-added to the same workflow."
+ },
+ "return_annotation": "Confirmation of subscriber removal from the workflow.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_unique_id",
+ "mailchimp_workflow_id"
+ ],
+ "description": "The unique identifier for the Mailchimp automation workflow.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "subscriber_email_address",
+ "alternative_names": [
+ "member_email",
+ "email_of_subscriber"
+ ],
+ "description": "Email address of the list member to be removed from the workflow.",
+ "endpoint_argument_name": "email_address"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/automations/{workflow_id}/removed-subscribers",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Remove subscriber from workflow",
+ "description": "Remove a subscriber from a specific classic automation workflow. You can remove a subscriber at any point in an automation workflow, regardless of how many emails they've been sent from that workflow. Once they're removed, they can never be added back to the same workflow.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "email_address",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "description": "The list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber in Automation Queue\",\n \"description\": \"Information about subscribers in an Automation email queue.\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The list member's email address.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAutomationsIdRemovedSubscribersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_removed_subscriber_info",
+ "description": {
+ "tagline": "Retrieve details about a removed subscriber from automation.",
+ "detailed": "Use this tool to get specific information about a subscriber who was removed from a classic Mailchimp automation workflow by providing the workflow ID and subscriber hash."
+ },
+ "return_annotation": "Information about a removed subscriber from an automation workflow.",
+ "arguments": [
+ {
+ "name": "automation_workflow_id",
+ "alternative_names": [
+ "workflow_identifier",
+ "automation_id"
+ ],
+ "description": "The unique ID for the Mailchimp automation workflow. It is required to identify from which workflow the subscriber was removed.",
+ "endpoint_argument_name": "workflow_id"
+ },
+ {
+ "name": "subscriber_hash",
+ "alternative_names": [
+ "email_hash",
+ "member_hash"
+ ],
+ "description": "MD5 hash of the lowercase version of the subscriber's email address to identify the removed member.",
+ "endpoint_argument_name": "subscriber_hash"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/automations/{workflow_id}/removed-subscribers/{subscriber_hash}",
+ "tags": [
+ "automations"
+ ],
+ "summary": "Get subscriber removed from workflow",
+ "description": "Get information about a specific subscriber who was removed from a classic automation workflow.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "workflow_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "description": "The unique id for the Automation workflow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getBatches",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_batch_summaries",
+ "description": {
+ "tagline": "Retrieve a summary of batch requests from Mailchimp.",
+ "detailed": "Call this tool to obtain a summary of batch requests that have been executed in Mailchimp. Useful for monitoring and tracking the status and details of past batch operations."
+ },
+ "return_annotation": "A summary of batch requests made in Mailchimp.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "requested_fields",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of specific fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "alternative_names": [
+ "omit_fields_in_response",
+ "exclude_response_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "record_count_to_return",
+ "alternative_names": [
+ "num_records_to_return",
+ "batch_summary_record_limit"
+ ],
+ "description": "Specify the number of records to return, from 1 to 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_from_record"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0, used for navigating through large sets of data.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/batches",
+ "tags": [
+ "batches"
+ ],
+ "summary": "List batch requests",
+ "description": "Get a summary of batch requests that have been made.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postBatches",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "start_batch_processing",
+ "description": {
+ "tagline": "Initiate a batch operations request in Mailchimp.",
+ "detailed": "Use this tool to initiate processing of batch operations requests in Mailchimp Marketing. This is useful for handling multiple actions at once, such as managing email campaigns or subscriber updates."
+ },
+ "return_annotation": "Initiates and returns a response for batch processing request.",
+ "arguments": [
+ {
+ "name": "batch_operations",
+ "alternative_names": [
+ "operations_request",
+ "batch_tasks"
+ ],
+ "description": "A JSON object describing the batch operations to perform, including methods, paths, params, and optional body and operation_id for each operation.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/batches",
+ "tags": [
+ "batches"
+ ],
+ "summary": "Start batch operation",
+ "description": "Begin processing a batch operations request.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "operations": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "method": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The HTTP method to use for the operation."
+ },
+ "path": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The relative path to use for the operation."
+ },
+ "params": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Any request query parameters. Example parameters: {\"count\":10, \"offset\":0}"
+ },
+ "body": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string containing the JSON body to use with the request."
+ },
+ "operation_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An optional client-supplied id returned with the operation results."
+ }
+ },
+ "description": "An array of objects that describes operations to perform."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "properties": {
+ "operations": {
+ "type": "array",
+ "title": "Operations List",
+ "description": "An array of objects that describes operations to perform.",
+ "items": {
+ "type": "object",
+ "title": "Operations",
+ "properties": {
+ "method": {
+ "type": "string",
+ "title": "HTTP Method",
+ "description": "The HTTP method to use for the operation.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE"
+ ],
+ "example": "POST"
+ },
+ "path": {
+ "type": "string",
+ "title": "Path",
+ "description": "The relative path to use for the operation.",
+ "example": "/lists"
+ },
+ "params": {
+ "type": "object",
+ "title": "Query Parameters",
+ "description": "Any request query parameters. Example parameters: {\"count\":10, \"offset\":0}",
+ "properties": {}
+ },
+ "body": {
+ "type": "string",
+ "title": "Body",
+ "description": "A string containing the JSON body to use with the request.",
+ "example": "{\"title\":\"Test\"}"
+ },
+ "operation_id": {
+ "type": "string",
+ "title": "Operation ID",
+ "description": "An optional client-supplied id returned with the operation results.",
+ "example": "my-id-123"
+ }
+ },
+ "required": [
+ "method",
+ "path"
+ ]
+ }
+ }
+ },
+ "required": [
+ "operations"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"operations\"\n ],\n \"properties\": {\n \"operations\": {\n \"type\": \"array\",\n \"title\": \"Operations List\",\n \"description\": \"An array of objects that describes operations to perform.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Operations\",\n \"required\": [\n \"method\",\n \"path\"\n ],\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"title\": \"HTTP Method\",\n \"description\": \"The HTTP method to use for the operation.\",\n \"enum\": [\n \"GET\",\n \"POST\",\n \"PUT\",\n \"PATCH\",\n \"DELETE\"\n ],\n \"example\": \"POST\"\n },\n \"path\": {\n \"type\": \"string\",\n \"title\": \"Path\",\n \"description\": \"The relative path to use for the operation.\",\n \"example\": \"/lists\"\n },\n \"params\": {\n \"type\": \"object\",\n \"title\": \"Query Parameters\",\n \"description\": \"Any request query parameters. Example parameters: {\\\"count\\\":10, \\\"offset\\\":0}\",\n \"example\": \"{\\\"count\\\":10,\\\"offset\\\":0}\"\n },\n \"body\": {\n \"type\": \"string\",\n \"title\": \"Body\",\n \"description\": \"A string containing the JSON body to use with the request.\",\n \"example\": \"{\\\"title\\\":\\\"Test\\\"}\"\n },\n \"operation_id\": {\n \"type\": \"string\",\n \"title\": \"Operation ID\",\n \"description\": \"An optional client-supplied id returned with the operation results.\",\n \"example\": \"my-id-123\"\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getBatchesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_batch_status",
+ "description": {
+ "tagline": "Retrieve the status of a Mailchimp batch request.",
+ "detailed": "Use this tool to check the current status of a specific batch request in Mailchimp, identified by its batch ID."
+ },
+ "return_annotation": "Status of a Mailchimp batch request.",
+ "arguments": [
+ {
+ "name": "batch_operation_id",
+ "alternative_names": [
+ "operation_batch_id",
+ "mailchimp_batch_id"
+ ],
+ "description": "The unique ID for the Mailchimp batch operation to check its status.",
+ "endpoint_argument_name": "batch_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "excluded_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "fields_not_to_include"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/batches/{batch_id}",
+ "tags": [
+ "batches"
+ ],
+ "summary": "Get batch operation status",
+ "description": "Get the status of a batch request.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "batch_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch operation."
+ },
+ "description": "The unique id for the batch operation.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteBatchesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "cancel_batch_request",
+ "description": {
+ "tagline": "Cancels a running batch request to stop its execution.",
+ "detailed": "This tool stops a batch request from running in Mailchimp Marketing. It should be called to cancel a long-running batch request. After calling this, results of any completed operations in the batch will not be available."
+ },
+ "return_annotation": "Confirmation of batch request cancellation.",
+ "arguments": [
+ {
+ "name": "batch_request_id",
+ "alternative_names": [
+ "batch_operation_id",
+ "batch_job_id"
+ ],
+ "description": "The unique identifier for the batch request you want to cancel.",
+ "endpoint_argument_name": "batch_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/batches/{batch_id}",
+ "tags": [
+ "batches"
+ ],
+ "summary": "Delete batch request",
+ "description": "Stops a batch request from running. Since only one batch request is run at a time, this can be used to cancel a long running request. The results of any completed operations will not be available after this call.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "batch_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch operation."
+ },
+ "description": "The unique id for the batch operation.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getBatchWebhooks",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_all_batch_webhooks",
+ "description": {
+ "tagline": "Retrieve all configured webhooks for batches.",
+ "detailed": "Call this tool to get a list of webhooks that have been set up for handling batch processing events in Mailchimp."
+ },
+ "return_annotation": "List of configured batch webhooks.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object references.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "exclude_fields_list",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_records",
+ "records_count"
+ ],
+ "description": "Specify the number of webhook records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_offset",
+ "skip_records"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/batch-webhooks",
+ "tags": [
+ "batchWebhooks"
+ ],
+ "summary": "List batch webhooks",
+ "description": "Get all webhooks that have been configured for batches.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postBatchWebhooks",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "configure_webhook_on_batch_complete",
+ "description": {
+ "tagline": "Configure a webhook for batch processing completion alerts.",
+ "detailed": "This tool allows you to configure a webhook that triggers when any batch request completes processing in Mailchimp. Useful for automating follow-up actions based on batch completion events."
+ },
+ "return_annotation": "Confirmation of webhook configuration for batch processing.",
+ "arguments": [
+ {
+ "name": "webhook_url",
+ "alternative_names": [
+ "batch_webhook_url",
+ "webhook_endpoint_url"
+ ],
+ "description": "The URL where the webhook payload will be sent upon batch completion. It must be a valid and accessible URL.",
+ "endpoint_argument_name": "url"
+ },
+ {
+ "name": "webhook_enabled",
+ "alternative_names": [
+ "enable_webhook",
+ "webhook_activation"
+ ],
+ "description": "Set to True to enable the webhook to receive requests when batch processing completes.",
+ "endpoint_argument_name": "enabled"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/batch-webhooks",
+ "tags": [
+ "batchWebhooks"
+ ],
+ "summary": "Add batch webhook",
+ "description": "Configure a webhook that will fire whenever any batch request completes processing. You may only have a maximum of 20 batch webhooks.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "url",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "description": "A valid URL for the Webhook.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "schema_required": true
+ },
+ {
+ "name": "enabled",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook receives requests or not."
+ },
+ "description": "Whether the webhook receives requests or not.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "example": true
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Batch Webhook\",\n \"description\": \"Add a new Batch Webook.\",\n \"required\": [\n \"url\"\n ],\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the webhook receives requests or not.\",\n \"example\": true\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getBatchWebhook",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_batch_webhook_info",
+ "description": {
+ "tagline": "Retrieve details of a specific batch webhook on Mailchimp.",
+ "detailed": "Use this tool to get information about a specific batch webhook in a Mailchimp account. It retrieves details such as status and metadata of the specified webhook."
+ },
+ "return_annotation": "Information about a specific batch webhook.",
+ "arguments": [
+ {
+ "name": "batch_webhook_id",
+ "alternative_names": [
+ "webhook_identifier",
+ "unique_webhook_id"
+ ],
+ "description": "The unique ID for the batch webhook to retrieve information from Mailchimp.",
+ "endpoint_argument_name": "batch_webhook_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "return_fields"
+ ],
+ "description": "Specify fields to include in response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "exclude_webhook_fields",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the batch webhook details. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/batch-webhooks/{batch_webhook_id}",
+ "tags": [
+ "batchWebhooks"
+ ],
+ "summary": "Get batch webhook info",
+ "description": "Get information about a specific batch webhook.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "batch_webhook_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "description": "The unique id for the batch webhook.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchBatchWebhooks",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_batch_webhook",
+ "description": {
+ "tagline": "Update a batch webhook on Mailchimp.",
+ "detailed": "Use this tool to update a webhook that triggers when a batch request in Mailchimp completes. This is useful for managing notifications and automated responses to batch operations."
+ },
+ "return_annotation": "Details of the updated webhook.",
+ "arguments": [
+ {
+ "name": "batch_webhook_unique_id",
+ "alternative_names": [
+ "batch_webhook_identifier",
+ "webhook_id"
+ ],
+ "description": "The unique identifier for the batch webhook to update.",
+ "endpoint_argument_name": "batch_webhook_id"
+ },
+ {
+ "name": "webhook_url",
+ "alternative_names": [
+ "url_for_webhook",
+ "webhook_destination_url"
+ ],
+ "description": "A valid URL to send webhook notifications when a batch request completes in Mailchimp.",
+ "endpoint_argument_name": "url"
+ },
+ {
+ "name": "enable_webhook",
+ "alternative_names": [
+ "activate_webhook",
+ "set_webhook_active"
+ ],
+ "description": "Enable or disable webhook requests (true for enable, false for disable).",
+ "endpoint_argument_name": "enabled"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/batch-webhooks/{batch_webhook_id}",
+ "tags": [
+ "batchWebhooks"
+ ],
+ "summary": "Update batch webhook",
+ "description": "Update a webhook that will fire whenever any batch request completes processing.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "batch_webhook_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "description": "The unique id for the batch webhook.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "url",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "description": "A valid URL for the Webhook.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "enabled",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook receives requests or not."
+ },
+ "description": "Whether the webhook receives requests or not.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "example": true
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Batch Webhook\",\n \"description\": \"Update an existing Batch Webook.\",\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the webhook receives requests or not.\",\n \"example\": true\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteBatchWebhookId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "remove_batch_webhook",
+ "description": {
+ "tagline": "Remove a batch webhook to stop sending webhooks to a URL.",
+ "detailed": "This tool deletes a batch webhook identified by its ID, ensuring that webhooks are no longer sent to the specified URL. Use this tool when you need to stop receiving batch webhooks from Mailchimp to a particular endpoint."
+ },
+ "return_annotation": "Confirmation of webhook removal.",
+ "arguments": [
+ {
+ "name": "batch_webhook_id",
+ "alternative_names": [
+ "webhook_id",
+ "batch_id"
+ ],
+ "description": "The unique identifier for the batch webhook to remove. Use this ID to specify which webhook should be deleted, stopping any further webhook notifications to the associated URL.",
+ "endpoint_argument_name": "batch_webhook_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/batch-webhooks/{batch_webhook_id}",
+ "tags": [
+ "batchWebhooks"
+ ],
+ "summary": "Delete batch webhook",
+ "description": "Remove a batch webhook. Webhooks will no longer be sent to the given URL.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "batch_webhook_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "description": "The unique id for the batch webhook.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getTemplateFolders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_mailchimp_template_folders",
+ "description": {
+ "tagline": "Retrieve all template folders from Mailchimp.",
+ "detailed": "Use this tool to retrieve all folders used in Mailchimp to organize templates. It is helpful for managing and categorizing your email templates."
+ },
+ "return_annotation": "List of template folders for organization.",
+ "arguments": [
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_list",
+ "returned_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude_list",
+ "omit_fields_list"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "return_records_quantity"
+ ],
+ "description": "Specify the number of template folder records to return, up to a maximum of 1000. The default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_count",
+ "start_index"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/template-folders",
+ "tags": [
+ "templateFolders"
+ ],
+ "summary": "List template folders",
+ "description": "Get all folders used to organize templates.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postTemplateFolders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_template_folder",
+ "description": {
+ "tagline": "Create a new template folder in Mailchimp.",
+ "detailed": "Use this tool to add a new template folder in Mailchimp. This can help organize your templates into specific categories for better management."
+ },
+ "return_annotation": "Information about the newly created template folder.",
+ "arguments": [
+ {
+ "name": "folder_name",
+ "alternative_names": [
+ "template_folder_name",
+ "new_folder_name"
+ ],
+ "description": "The desired name for the new template folder in Mailchimp.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/template-folders",
+ "tags": [
+ "templateFolders"
+ ],
+ "summary": "Add template folder",
+ "description": "Create a new template folder.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "description": "The name of the folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Folder\",\n \"description\": \"A folder used to organize templates.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getTemplateFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_template_folder_info",
+ "description": {
+ "tagline": "Retrieve details of a specific template folder.",
+ "detailed": "Use this tool to get information about a particular folder used for organizing templates in Mailchimp. This is helpful when you need to know more about how your templates are categorized."
+ },
+ "return_annotation": "Information about a specific template folder.",
+ "arguments": [
+ {
+ "name": "template_folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "folder_unique_id"
+ ],
+ "description": "The unique ID for the template folder to retrieve information about.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to return for the folder. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/template-folders/{folder_id}",
+ "tags": [
+ "templateFolders"
+ ],
+ "summary": "Get template folder",
+ "description": "Get information about a specific folder used to organize templates.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "description": "The unique id for the template folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchTemplateFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_template_folder",
+ "description": {
+ "tagline": "Update a specific folder for organizing templates.",
+ "detailed": "This tool updates a specific folder used to organize templates in Mailchimp. It should be called when you need to change the details of a template folder, identified by its ID."
+ },
+ "return_annotation": "The updated details of the template folder.",
+ "arguments": [
+ {
+ "name": "template_folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "template_folder_identifier"
+ ],
+ "description": "The unique identifier for the template folder to be updated.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "folder_name",
+ "alternative_names": [
+ "template_folder_name",
+ "folder_title"
+ ],
+ "description": "The new name for the template folder. Provide a string value.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/template-folders/{folder_id}",
+ "tags": [
+ "templateFolders"
+ ],
+ "summary": "Update template folder",
+ "description": "Update a specific folder used to organize templates.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "description": "The unique id for the template folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "description": "The name of the folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Folder\",\n \"description\": \"A folder used to organize templates.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteTemplateFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_template_folder",
+ "description": {
+ "tagline": "Delete a specific template folder in Mailchimp.",
+ "detailed": "Use this tool to delete a specific template folder in Mailchimp and mark all its templates as 'unfiled'. Call this tool when you need to reorganize or clean up template folders."
+ },
+ "return_annotation": "Confirmation of folder deletion and templates marked as 'unfiled'.",
+ "arguments": [
+ {
+ "name": "template_folder_id",
+ "alternative_names": [
+ "folder_unique_id",
+ "template_folder_identifier"
+ ],
+ "description": "The unique ID for the template folder to be deleted. Use this to specify which folder should be removed and have its templates marked as 'unfiled'.",
+ "endpoint_argument_name": "folder_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/template-folders/{folder_id}",
+ "tags": [
+ "templateFolders"
+ ],
+ "summary": "Delete template folder",
+ "description": "Delete a specific template folder, and mark all the templates in the folder as 'unfiled'.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "description": "The unique id for the template folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaignFolders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_folders",
+ "description": {
+ "tagline": "Retrieve all folders used to organize campaigns.",
+ "detailed": "Use this tool to get a list of all folders created for organizing your campaigns in Mailchimp."
+ },
+ "return_annotation": "List of all campaign folders.",
+ "arguments": [
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "returned_fields",
+ "fields_to_include"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_limit",
+ "max_campaign_folders"
+ ],
+ "description": "The number of campaign folders to return, between 1 and 1000. Defaults to 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "pagination_skip",
+ "pagination_offset_value"
+ ],
+ "description": "Number of records to skip for pagination. Defaults to 0. Use for fetching subsequent pages.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaign-folders",
+ "tags": [
+ "campaignFolders"
+ ],
+ "summary": "List campaign folders",
+ "description": "Get all folders used to organize campaigns.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignFolders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_campaign_folder",
+ "description": {
+ "tagline": "Create a new campaign folder in Mailchimp.",
+ "detailed": "This tool is used to create a new campaign folder within Mailchimp marketing. Call this tool when you need to organize campaigns into folders for better management."
+ },
+ "return_annotation": "Details of the newly created campaign folder.",
+ "arguments": [
+ {
+ "name": "folder_name",
+ "alternative_names": [
+ "folder_title",
+ "campaign_folder_name"
+ ],
+ "description": "The name to assign to the new campaign folder. It should be a descriptive string that helps identify the folder's contents.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaign-folders",
+ "tags": [
+ "campaignFolders"
+ ],
+ "summary": "Add campaign folder",
+ "description": "Create a new campaign folder.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Name to associate with the folder."
+ },
+ "description": "Name to associate with the folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "Name to associate with the folder."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Folder\",\n \"description\": \"A folder used to organize campaigns.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"Name to associate with the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaignFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_folder_info",
+ "description": {
+ "tagline": "Get details about a specific campaign folder.",
+ "detailed": "Call this tool to retrieve information about a specific campaign folder used for organizing campaigns in Mailchimp."
+ },
+ "return_annotation": "Information about a specific campaign folder.",
+ "arguments": [
+ {
+ "name": "campaign_folder_id",
+ "alternative_names": [
+ "folder_unique_id",
+ "campaign_folder_identifier"
+ ],
+ "description": "The unique identifier for the campaign folder. Used to specify which folder's information to retrieve.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "selected_fields"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_specific_fields"
+ ],
+ "description": "Specify a comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaign-folders/{folder_id}",
+ "tags": [
+ "campaignFolders"
+ ],
+ "summary": "Get campaign folder",
+ "description": "Get information about a specific folder used to organize campaigns.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "description": "The unique id for the campaign folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchCampaignFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_campaign_folder",
+ "description": {
+ "tagline": "Update a specific folder used to organize campaigns.",
+ "detailed": "Use this tool to modify the details of an existing campaign folder in Mailchimp. It updates the specified folder to help organize marketing campaigns more efficiently."
+ },
+ "return_annotation": "Information about the updated campaign folder.",
+ "arguments": [
+ {
+ "name": "campaign_folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "campaign_folder_identifier"
+ ],
+ "description": "The unique identifier for the campaign folder to be updated.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "folder_name",
+ "alternative_names": [
+ "campaign_folder_name",
+ "folder_title"
+ ],
+ "description": "The new name to assign to the campaign folder.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/campaign-folders/{folder_id}",
+ "tags": [
+ "campaignFolders"
+ ],
+ "summary": "Update campaign folder",
+ "description": "Update a specific folder used to organize campaigns.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "description": "The unique id for the campaign folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Name to associate with the folder."
+ },
+ "description": "Name to associate with the folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "Name to associate with the folder."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Folder\",\n \"description\": \"A folder used to organize campaigns.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"Name to associate with the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteCampaignFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_campaign_folder",
+ "description": {
+ "tagline": "Delete a specific campaign folder in Mailchimp.",
+ "detailed": "Deletes a specified campaign folder in Mailchimp and marks all campaigns in it as 'unfiled'. This tool should be called when you need to remove a campaign folder and manage its contents accordingly."
+ },
+ "return_annotation": "Confirms the deletion of a campaign folder.",
+ "arguments": [
+ {
+ "name": "campaign_folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "campaign_id"
+ ],
+ "description": "The unique ID for the Mailchimp campaign folder to be deleted.",
+ "endpoint_argument_name": "folder_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/campaign-folders/{folder_id}",
+ "tags": [
+ "campaignFolders"
+ ],
+ "summary": "Delete campaign folder",
+ "description": "Delete a specific campaign folder, and mark all the campaigns in the folder as 'unfiled'.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "description": "The unique id for the campaign folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaigns",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_all_marketing_campaigns",
+ "description": {
+ "tagline": "Fetches all marketing campaigns from an account.",
+ "detailed": "Use this tool to retrieve a list of all marketing campaigns associated with a Mailchimp account."
+ },
+ "return_annotation": "List of marketing campaigns in the account.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "selected_fields",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_attributes"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "num_records",
+ "records_limit"
+ ],
+ "description": "Number of records to return, between 10 and 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_offset",
+ "pagination_skip"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "campaign_type",
+ "alternative_names": [
+ "type_of_campaign",
+ "campaign_category"
+ ],
+ "description": "Specify the type of campaign to retrieve (e.g., regular, plaintext, absplit).",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "campaign_status",
+ "alternative_names": [
+ "status_of_campaign",
+ "campaign_current_status"
+ ],
+ "description": "Filter campaigns by their status (e.g., sent, draft).",
+ "endpoint_argument_name": "status"
+ },
+ {
+ "name": "sent_before_time",
+ "alternative_names": [
+ "campaign_sent_before",
+ "limit_by_sent_time"
+ ],
+ "description": "Restricts the response to campaigns sent before the specified time. It should be in ISO 8601 format.",
+ "endpoint_argument_name": "before_send_time"
+ },
+ {
+ "name": "restrict_to_campaigns_sent_after",
+ "alternative_names": [
+ "filter_by_send_time_after",
+ "campaigns_sent_after"
+ ],
+ "description": "Restrict the response to campaigns sent after the specified ISO 8601 time.",
+ "endpoint_argument_name": "since_send_time"
+ },
+ {
+ "name": "created_before_date_time",
+ "alternative_names": [
+ "before_creation_time",
+ "before_campaign_creation"
+ ],
+ "description": "Restrict response to campaigns created before this time using ISO 8601 format.",
+ "endpoint_argument_name": "before_create_time"
+ },
+ {
+ "name": "campaigns_created_after",
+ "alternative_names": [
+ "from_create_time",
+ "start_creation_date"
+ ],
+ "description": "Specify the date and time to restrict results to campaigns created after this point. Must be in ISO 8601 format.",
+ "endpoint_argument_name": "since_create_time"
+ },
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "unique_list_id"
+ ],
+ "description": "The unique identifier for the list associated with the campaigns to be retrieved.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "unique_folder_id",
+ "alternative_names": [
+ "campaign_folder_id",
+ "folder_identifier"
+ ],
+ "description": "Unique identifier for the folder containing the campaigns.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "list_member_identifier",
+ "alternative_names": [
+ "list_member_id",
+ "member_hash_id"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member\u2019s email. Used to retrieve campaigns sent to this member.",
+ "endpoint_argument_name": "member_id"
+ },
+ {
+ "name": "sort_by_field",
+ "alternative_names": [
+ "field_sort_order",
+ "sort_field_by"
+ ],
+ "description": "Specify the field to sort the campaigns by. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "ordering_direction",
+ "results_sort_order"
+ ],
+ "description": "Specify the sorting order for the results. Use 'ASC' for ascending or 'DESC' for descending.",
+ "endpoint_argument_name": "sort_dir"
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "alternative_names": [
+ "resend_eligibility_field",
+ "shortcut_eligibility_return"
+ ],
+ "description": "Include this field in the response to determine if campaigns are eligible for Resend Shortcuts.",
+ "endpoint_argument_name": "include_resend_shortcut_eligibility"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaigns",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "List campaigns",
+ "description": "Get all campaigns in an account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign type."
+ },
+ "description": "The campaign type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "status",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of the campaign."
+ },
+ "description": "The status of the campaign.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_send_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_send_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_create_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to campaigns created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_create_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to campaigns created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the list."
+ },
+ "description": "The unique id for the list.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique folder id."
+ },
+ "description": "The unique folder id.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "member_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Retrieve campaigns sent to a particular list member. Member ID is The MD5 hash of the lowercase version of the list member\u2019s email address."
+ },
+ "description": "Retrieve campaigns sent to a particular list member. Member ID is The MD5 hash of the lowercase version of the list member\u2019s email address.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered."
+ },
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaigns",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_campaign",
+ "description": {
+ "tagline": "Create a new Mailchimp campaign quickly.",
+ "detailed": "This tool is used to initiate a new email campaign via Mailchimp. It should be called when a user wants to create and configure a marketing email or advertisement using Mailchimp's services."
+ },
+ "return_annotation": "Information about the newly created Mailchimp campaign.",
+ "arguments": [
+ {
+ "name": "campaign_details",
+ "alternative_names": [
+ "campaign_configuration",
+ "campaign_payload"
+ ],
+ "description": "JSON object detailing the campaign type, recipients, settings, tracking options, and more.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Add campaign",
+ "description": "Create a new Mailchimp campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead."
+ },
+ "recipients": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "saved_segment_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Segment match type."
+ },
+ "conditions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ }
+ },
+ "inner_properties": null,
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options."
+ }
+ },
+ "inner_properties": null,
+ "description": "List settings for the campaign."
+ },
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending."
+ },
+ "use_conversation": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to."
+ },
+ "fb_comments": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more."
+ },
+ "variate_settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "winner_criteria": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application."
+ },
+ "wait_time": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used."
+ },
+ "send_times": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored."
+ },
+ "from_names": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used."
+ },
+ "reply_to_addresses": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings specific to A/B test campaigns."
+ },
+ "tracking": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opens": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "capsule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ }
+ },
+ "inner_properties": null,
+ "description": "The tracking options for a campaign."
+ },
+ "rss_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "feed_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The frequency of the RSS Campaign."
+ },
+ "schedule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "hour": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sunday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ },
+ "inner_properties": null,
+ "description": "The days of the week to send a daily RSS Campaign."
+ },
+ "weekly_send_day": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ },
+ "inner_properties": null,
+ "description": "The schedule for sending the RSS Campaign."
+ },
+ "constrain_rss_img": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "inner_properties": null,
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign."
+ },
+ "social_card": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ },
+ "inner_properties": null,
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/)."
+ },
+ "content_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "template",
+ "multichannel"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "How the campaign's content is put together. The old drag and drop editor uses 'template' while the new editor uses 'multichannel'. Defaults to template."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "type": "object",
+ "properties": {}
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "list_id"
+ ]
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "properties": {
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "winner_criteria"
+ ]
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign.",
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "description": "The URL for the RSS feed.",
+ "format": "uri"
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/).",
+ "minimum": 0,
+ "maximum": 23
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign.",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February.",
+ "minimum": 0,
+ "maximum": 31
+ }
+ }
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "required": [
+ "feed_url",
+ "frequency"
+ ]
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together. The old drag and drop editor uses 'template' while the new editor uses 'multichannel'. Defaults to template.",
+ "enum": [
+ "template",
+ "multichannel"
+ ],
+ "example": "template"
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign\",\n \"description\": \"A summary of an individual campaign's settings and content.\",\n \"required\": [\n \"type\"\n ],\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Campaign Type\",\n \"description\": \"There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.\",\n \"enum\": [\n \"regular\",\n \"plaintext\",\n \"absplit\",\n \"rss\",\n \"variate\"\n ]\n },\n \"recipients\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"List settings for the campaign.\",\n \"required\": [\n \"list_id\"\n ],\n \"properties\": {\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The unique list id.\"\n },\n \"segment_opts\": {\n \"type\": \"object\",\n \"title\": \"Segment Options\",\n \"description\": \"An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.\",\n \"properties\": {\n \"saved_segment_id\": {\n \"type\": \"integer\",\n \"title\": \"Saved Segment ID\",\n \"description\": \"The id for an existing saved segment.\"\n },\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match Type\",\n \"description\": \"Segment match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n },\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Campaign Settings\",\n \"description\": \"The settings for your campaign, including subject, from name, reply-to address, and more.\",\n \"properties\": {\n \"subject_line\": {\n \"type\": \"string\",\n \"title\": \"Campaign Subject Line\",\n \"description\": \"The subject line for the campaign.\"\n },\n \"preview_text\": {\n \"type\": \"string\",\n \"title\": \"Campaign Preview Text\",\n \"description\": \"The preview text for the campaign.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Campaign Title\",\n \"description\": \"The title of the campaign.\"\n },\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name on the campaign (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending.\"\n },\n \"use_conversation\": {\n \"type\": \"boolean\",\n \"title\": \"Conversation\",\n \"description\": \"Use Mailchimp Conversation feature to manage out-of-office replies.\"\n },\n \"to_name\": {\n \"type\": \"string\",\n \"title\": \"To Name\",\n \"description\": \"The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/).\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"If the campaign is listed in a folder, the id for that folder.\"\n },\n \"authenticate\": {\n \"type\": \"boolean\",\n \"title\": \"Authentication\",\n \"description\": \"Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`.\"\n },\n \"auto_footer\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Footer\",\n \"description\": \"Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign.\"\n },\n \"inline_css\": {\n \"type\": \"boolean\",\n \"title\": \"Inline CSS\",\n \"description\": \"Automatically inline the CSS included with the campaign content.\"\n },\n \"auto_tweet\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Tweet\",\n \"description\": \"Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent.\"\n },\n \"auto_fb_post\": {\n \"type\": \"array\",\n \"title\": \"Auto Post to Facebook\",\n \"description\": \"An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"fb_comments\": {\n \"type\": \"boolean\",\n \"title\": \"Facebook Comments\",\n \"description\": \"Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`.\"\n },\n \"template_id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n }\n }\n },\n \"variate_settings\": {\n \"type\": \"object\",\n \"title\": \"A/B Test Options\",\n \"description\": \"The settings specific to A/B test campaigns.\",\n \"required\": [\n \"winner_criteria\"\n ],\n \"properties\": {\n \"winner_criteria\": {\n \"type\": \"string\",\n \"title\": \"Winning Criteria\",\n \"description\": \"The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.\",\n \"enum\": [\n \"opens\",\n \"clicks\",\n \"manual\",\n \"total_revenue\"\n ]\n },\n \"wait_time\": {\n \"type\": \"integer\",\n \"title\": \"Wait Time\",\n \"description\": \"The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes.\"\n },\n \"test_size\": {\n \"type\": \"integer\",\n \"title\": \"Test Size\",\n \"description\": \"The percentage of recipients to send the test combinations to, must be a value between 10 and 100.\"\n },\n \"subject_lines\": {\n \"type\": \"array\",\n \"title\": \"Subject Lines\",\n \"description\": \"The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"send_times\": {\n \"type\": \"array\",\n \"title\": \"Send Times\",\n \"description\": \"The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.\",\n \"items\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"from_names\": {\n \"type\": \"array\",\n \"title\": \"From Names\",\n \"description\": \"The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"reply_to_addresses\": {\n \"type\": \"array\",\n \"title\": \"Reply To Addresses\",\n \"description\": \"The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Campaign Tracking Options\",\n \"description\": \"The tracking options for a campaign.\",\n \"properties\": {\n \"opens\": {\n \"type\": \"boolean\",\n \"title\": \"Opens\",\n \"description\": \"Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"html_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"HTML Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"text_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"Plain-Text Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"goal_tracking\": {\n \"type\": \"boolean\",\n \"title\": \"Mailchimp Goal Tracking\",\n \"description\": \"Deprecated\"\n },\n \"ecomm360\": {\n \"type\": \"boolean\",\n \"title\": \"E-commerce Tracking\",\n \"description\": \"Whether to enable e-commerce tracking.\"\n },\n \"google_analytics\": {\n \"type\": \"string\",\n \"title\": \"Google Analytics Tracking\",\n \"description\": \"The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes).\"\n },\n \"clicktale\": {\n \"type\": \"string\",\n \"title\": \"ClickTale Analytics Tracking\",\n \"description\": \"The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes).\"\n },\n \"salesforce\": {\n \"type\": \"object\",\n \"title\": \"Salesforce CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Campaign\",\n \"description\": \"Create a campaign in a connected Salesforce account.\"\n },\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n },\n \"capsule\": {\n \"type\": \"object\",\n \"title\": \"Capsule CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Capsule Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n }\n }\n },\n \"rss_opts\": {\n \"type\": \"object\",\n \"title\": \"RSS Options\",\n \"description\": \"[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign.\",\n \"required\": [\n \"feed_url\",\n \"frequency\"\n ],\n \"properties\": {\n \"feed_url\": {\n \"type\": \"string\",\n \"title\": \"Feed URL\",\n \"format\": \"uri\",\n \"description\": \"The URL for the RSS feed.\"\n },\n \"frequency\": {\n \"type\": \"string\",\n \"title\": \"Frequency\",\n \"description\": \"The frequency of the RSS Campaign.\",\n \"enum\": [\n \"daily\",\n \"weekly\",\n \"monthly\"\n ]\n },\n \"schedule\": {\n \"type\": \"object\",\n \"title\": \"Sending Schedule\",\n \"description\": \"The schedule for sending the RSS Campaign.\",\n \"properties\": {\n \"hour\": {\n \"type\": \"integer\",\n \"minimum\": 0,\n \"maximum\": 23,\n \"title\": \"Sending Hour\",\n \"description\": \"The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/).\"\n },\n \"daily_send\": {\n \"type\": \"object\",\n \"title\": \"Daily Sending Days\",\n \"description\": \"The days of the week to send a daily RSS Campaign.\",\n \"properties\": {\n \"sunday\": {\n \"type\": \"boolean\",\n \"title\": \"Sunday\",\n \"description\": \"Sends the daily RSS Campaign on Sundays.\"\n },\n \"monday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Mondays.\"\n },\n \"tuesday\": {\n \"type\": \"boolean\",\n \"title\": \"tuesday\",\n \"description\": \"Sends the daily RSS Campaign on Tuesdays.\"\n },\n \"wednesday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Wednesdays.\"\n },\n \"thursday\": {\n \"type\": \"boolean\",\n \"title\": \"Thursday\",\n \"description\": \"Sends the daily RSS Campaign on Thursdays.\"\n },\n \"friday\": {\n \"type\": \"boolean\",\n \"title\": \"Friday\",\n \"description\": \"Sends the daily RSS Campaign on Fridays.\"\n },\n \"saturday\": {\n \"type\": \"boolean\",\n \"title\": \"Saturday\",\n \"description\": \"Sends the daily RSS Campaign on Saturdays.\"\n }\n }\n },\n \"weekly_send_day\": {\n \"type\": \"string\",\n \"enum\": [\n \"sunday\",\n \"monday\",\n \"tuesday\",\n \"wednesday\",\n \"thursday\",\n \"friday\",\n \"saturday\"\n ],\n \"title\": \"Weekly Sending Day\",\n \"description\": \"The day of the week to send a weekly RSS Campaign.\"\n },\n \"monthly_send_date\": {\n \"type\": \"number\",\n \"minimum\": 0,\n \"maximum\": 31,\n \"title\": \"Monthly Sending Day\",\n \"description\": \"The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February.\"\n }\n }\n },\n \"constrain_rss_img\": {\n \"type\": \"boolean\",\n \"title\": \"Constrain RSS Images\",\n \"description\": \"Whether to add CSS to images in the RSS feed to constrain their width in campaigns.\"\n }\n }\n },\n \"social_card\": {\n \"type\": \"object\",\n \"title\": \"Campaign Social Card\",\n \"description\": \"The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).\",\n \"properties\": {\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The url for the header image for the card.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Campaign Description\",\n \"description\": \"A short summary of the campaign to display.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title for the card. Typically the subject line of the campaign.\"\n }\n }\n },\n \"content_type\": {\n \"type\": \"string\",\n \"title\": \"Content Type\",\n \"description\": \"How the campaign's content is put together. The old drag and drop editor uses 'template' while the new editor uses 'multichannel'. Defaults to template.\",\n \"example\": \"template\",\n \"enum\": [\n \"template\",\n \"multichannel\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaignsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_details",
+ "description": {
+ "tagline": "Retrieve details of a specific marketing campaign.",
+ "detailed": "Use this tool to get detailed information about a specific campaign using its ID. It provides insights and data related to that campaign."
+ },
+ "return_annotation": "Details of a specific marketing campaign.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_unique_id"
+ ],
+ "description": "The unique identifier for the campaign to retrieve details about.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "returnable_fields"
+ ],
+ "description": "Specify a comma-separated list of fields to return, using dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_field_list"
+ ],
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "alternative_names": [
+ "resend_eligibility",
+ "shortcut_eligibility"
+ ],
+ "description": "Include the `resend_shortcut_eligibility` field in the response to check if the campaign is eligible for Campaign Resend Shortcuts.",
+ "endpoint_argument_name": "include_resend_shortcut_eligibility"
+ },
+ {
+ "name": "include_resend_shortcut_usage",
+ "alternative_names": [
+ "resend_shortcut_usage",
+ "shortcut_usage_inclusion"
+ ],
+ "description": "Include this to receive the `resend_shortcut_usage` field, providing details about campaigns related by a shortcut.",
+ "endpoint_argument_name": "include_resend_shortcut_usage"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaigns/{campaign_id}",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Get campaign info",
+ "description": "Get information about a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered."
+ },
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_resend_shortcut_usage",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_usage` field in the response. This includes information about campaigns related by a shortcut."
+ },
+ "description": "Return the `resend_shortcut_usage` field in the response. This includes information about campaigns related by a shortcut.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchCampaignsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_campaign_settings",
+ "description": {
+ "tagline": "Update campaign settings in Mailchimp.",
+ "detailed": "Use this tool to modify specific settings for a given campaign in Mailchimp. Suitable for updating parts or all of a campaign's configuration."
+ },
+ "return_annotation": "Details of the updated campaign settings.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id_number",
+ "campaign_identifier"
+ ],
+ "description": "The unique identifier for the campaign to be updated in Mailchimp.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "campaign_update_request_body",
+ "alternative_names": [
+ "campaign_settings_payload",
+ "campaign_configuration_body"
+ ],
+ "description": "JSON object containing settings to update for the campaign, such as recipients, settings, and tracking.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/campaigns/{campaign_id}",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Update campaign settings",
+ "description": "Update some or all of the settings for a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "recipients": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "saved_segment_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign."
+ },
+ "match": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Segment match type."
+ },
+ "conditions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ }
+ },
+ "inner_properties": null,
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options."
+ }
+ },
+ "inner_properties": null,
+ "description": "List settings for the campaign."
+ },
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to."
+ },
+ "fb_comments": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more."
+ },
+ "variate_settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "winner_criteria": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application."
+ },
+ "wait_time": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used."
+ },
+ "send_times": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored."
+ },
+ "from_names": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used."
+ },
+ "reply_to_addresses": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings specific to A/B test campaigns."
+ },
+ "tracking": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opens": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "capsule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ }
+ },
+ "inner_properties": null,
+ "description": "The tracking options for a campaign."
+ },
+ "rss_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "feed_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The frequency of the RSS Campaign."
+ },
+ "schedule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "hour": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sunday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ },
+ "inner_properties": null,
+ "description": "The days of the week to send a daily RSS Campaign."
+ },
+ "weekly_send_day": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ },
+ "inner_properties": null,
+ "description": "The schedule for sending the RSS Campaign."
+ },
+ "constrain_rss_img": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "inner_properties": null,
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign."
+ },
+ "social_card": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ },
+ "inner_properties": null,
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/)."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "properties": {
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "type": "object",
+ "properties": {}
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "list_id"
+ ]
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ }
+ },
+ "required": [
+ "subject_line",
+ "from_name",
+ "reply_to"
+ ]
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "properties": {
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "winner_criteria"
+ ]
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "description": "The URL for the RSS feed.",
+ "format": "uri"
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/).",
+ "minimum": 0,
+ "maximum": 23
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign.",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February.",
+ "minimum": 0,
+ "maximum": 31
+ }
+ }
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "required": [
+ "feed_url",
+ "frequency"
+ ]
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ }
+ },
+ "required": [
+ "settings"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign\",\n \"description\": \"A summary of an individual campaign's settings and content.\",\n \"required\": [\n \"settings\"\n ],\n \"properties\": {\n \"recipients\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"List settings for the campaign.\",\n \"required\": [\n \"list_id\"\n ],\n \"properties\": {\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The unique list id.\"\n },\n \"segment_opts\": {\n \"type\": \"object\",\n \"title\": \"Segment Options\",\n \"description\": \"An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.\",\n \"properties\": {\n \"saved_segment_id\": {\n \"type\": \"integer\",\n \"title\": \"Saved Segment ID\",\n \"description\": \"The id for an existing saved segment.\"\n },\n \"prebuilt_segment_id\": {\n \"type\": \"string\",\n \"title\": \"Prebuilt Segment Id\",\n \"description\": \"The prebuilt segment id, if a prebuilt segment has been designated for this campaign.\",\n \"example\": \"subscribers-female\"\n },\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match Type\",\n \"description\": \"Segment match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n },\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Campaign Settings\",\n \"description\": \"The settings for your campaign, including subject, from name, reply-to address, and more.\",\n \"required\": [\n \"subject_line\",\n \"from_name\",\n \"reply_to\"\n ],\n \"properties\": {\n \"subject_line\": {\n \"type\": \"string\",\n \"title\": \"Campaign Subject Line\",\n \"description\": \"The subject line for the campaign.\"\n },\n \"preview_text\": {\n \"type\": \"string\",\n \"title\": \"Campaign Preview Text\",\n \"description\": \"The preview text for the campaign.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Campaign Title\",\n \"description\": \"The title of the campaign.\"\n },\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name on the campaign (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the campaign.\"\n },\n \"use_conversation\": {\n \"type\": \"boolean\",\n \"title\": \"Conversation\",\n \"description\": \"Use Mailchimp Conversation feature to manage out-of-office replies.\"\n },\n \"to_name\": {\n \"type\": \"string\",\n \"title\": \"To Name\",\n \"description\": \"The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/).\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"If the campaign is listed in a folder, the id for that folder.\"\n },\n \"authenticate\": {\n \"type\": \"boolean\",\n \"title\": \"Authentication\",\n \"description\": \"Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`.\"\n },\n \"auto_footer\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Footer\",\n \"description\": \"Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign.\"\n },\n \"inline_css\": {\n \"type\": \"boolean\",\n \"title\": \"Inline CSS\",\n \"description\": \"Automatically inline the CSS included with the campaign content.\"\n },\n \"auto_tweet\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Tweet\",\n \"description\": \"Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent.\"\n },\n \"auto_fb_post\": {\n \"type\": \"array\",\n \"title\": \"Auto Post to Facebook\",\n \"description\": \"An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"fb_comments\": {\n \"type\": \"boolean\",\n \"title\": \"Facebook Comments\",\n \"description\": \"Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`.\"\n },\n \"template_id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n }\n }\n },\n \"variate_settings\": {\n \"type\": \"object\",\n \"title\": \"A/B Test Options\",\n \"description\": \"The settings specific to A/B test campaigns.\",\n \"required\": [\n \"winner_criteria\"\n ],\n \"properties\": {\n \"winner_criteria\": {\n \"type\": \"string\",\n \"title\": \"Winning Criteria\",\n \"description\": \"The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.\",\n \"enum\": [\n \"opens\",\n \"clicks\",\n \"manual\",\n \"total_revenue\"\n ]\n },\n \"wait_time\": {\n \"type\": \"integer\",\n \"title\": \"Wait Time\",\n \"description\": \"The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes.\"\n },\n \"test_size\": {\n \"type\": \"integer\",\n \"title\": \"Test Size\",\n \"description\": \"The percentage of recipients to send the test combinations to, must be a value between 10 and 100.\"\n },\n \"subject_lines\": {\n \"type\": \"array\",\n \"title\": \"Subject Lines\",\n \"description\": \"The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"send_times\": {\n \"type\": \"array\",\n \"title\": \"Send Times\",\n \"description\": \"The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.\",\n \"items\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"from_names\": {\n \"type\": \"array\",\n \"title\": \"From Names\",\n \"description\": \"The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"reply_to_addresses\": {\n \"type\": \"array\",\n \"title\": \"Reply To Addresses\",\n \"description\": \"The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Campaign Tracking Options\",\n \"description\": \"The tracking options for a campaign.\",\n \"properties\": {\n \"opens\": {\n \"type\": \"boolean\",\n \"title\": \"Opens\",\n \"description\": \"Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"html_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"HTML Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"text_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"Plain-Text Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"goal_tracking\": {\n \"type\": \"boolean\",\n \"title\": \"Mailchimp Goal Tracking\",\n \"description\": \"Deprecated\"\n },\n \"ecomm360\": {\n \"type\": \"boolean\",\n \"title\": \"E-commerce Tracking\",\n \"description\": \"Whether to enable e-commerce tracking.\"\n },\n \"google_analytics\": {\n \"type\": \"string\",\n \"title\": \"Google Analytics Tracking\",\n \"description\": \"The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes).\"\n },\n \"clicktale\": {\n \"type\": \"string\",\n \"title\": \"ClickTale Analytics Tracking\",\n \"description\": \"The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes).\"\n },\n \"salesforce\": {\n \"type\": \"object\",\n \"title\": \"Salesforce CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Campaign\",\n \"description\": \"Create a campaign in a connected Salesforce account.\"\n },\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n },\n \"capsule\": {\n \"type\": \"object\",\n \"title\": \"Capsule CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Capsule Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n }\n }\n },\n \"rss_opts\": {\n \"type\": \"object\",\n \"title\": \"RSS Options\",\n \"description\": \"[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.\",\n \"required\": [\n \"feed_url\",\n \"frequency\"\n ],\n \"properties\": {\n \"feed_url\": {\n \"type\": \"string\",\n \"title\": \"Feed URL\",\n \"format\": \"uri\",\n \"description\": \"The URL for the RSS feed.\"\n },\n \"frequency\": {\n \"type\": \"string\",\n \"title\": \"Frequency\",\n \"description\": \"The frequency of the RSS Campaign.\",\n \"enum\": [\n \"daily\",\n \"weekly\",\n \"monthly\"\n ]\n },\n \"schedule\": {\n \"type\": \"object\",\n \"title\": \"Sending Schedule\",\n \"description\": \"The schedule for sending the RSS Campaign.\",\n \"properties\": {\n \"hour\": {\n \"type\": \"integer\",\n \"minimum\": 0,\n \"maximum\": 23,\n \"title\": \"Sending Hour\",\n \"description\": \"The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/).\"\n },\n \"daily_send\": {\n \"type\": \"object\",\n \"title\": \"Daily Sending Days\",\n \"description\": \"The days of the week to send a daily RSS Campaign.\",\n \"properties\": {\n \"sunday\": {\n \"type\": \"boolean\",\n \"title\": \"Sunday\",\n \"description\": \"Sends the daily RSS Campaign on Sundays.\"\n },\n \"monday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Mondays.\"\n },\n \"tuesday\": {\n \"type\": \"boolean\",\n \"title\": \"tuesday\",\n \"description\": \"Sends the daily RSS Campaign on Tuesdays.\"\n },\n \"wednesday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Wednesdays.\"\n },\n \"thursday\": {\n \"type\": \"boolean\",\n \"title\": \"Thursday\",\n \"description\": \"Sends the daily RSS Campaign on Thursdays.\"\n },\n \"friday\": {\n \"type\": \"boolean\",\n \"title\": \"Friday\",\n \"description\": \"Sends the daily RSS Campaign on Fridays.\"\n },\n \"saturday\": {\n \"type\": \"boolean\",\n \"title\": \"Saturday\",\n \"description\": \"Sends the daily RSS Campaign on Saturdays.\"\n }\n }\n },\n \"weekly_send_day\": {\n \"type\": \"string\",\n \"enum\": [\n \"sunday\",\n \"monday\",\n \"tuesday\",\n \"wednesday\",\n \"thursday\",\n \"friday\",\n \"saturday\"\n ],\n \"title\": \"Weekly Sending Day\",\n \"description\": \"The day of the week to send a weekly RSS Campaign.\"\n },\n \"monthly_send_date\": {\n \"type\": \"number\",\n \"minimum\": 0,\n \"maximum\": 31,\n \"title\": \"Monthly Sending Day\",\n \"description\": \"The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February.\"\n }\n }\n },\n \"constrain_rss_img\": {\n \"type\": \"boolean\",\n \"title\": \"Constrain RSS Images\",\n \"description\": \"Whether to add CSS to images in the RSS feed to constrain their width in campaigns.\"\n }\n }\n },\n \"social_card\": {\n \"type\": \"object\",\n \"title\": \"Campaign Social Card\",\n \"description\": \"The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).\",\n \"properties\": {\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The url for the header image for the card.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Campaign Description\",\n \"description\": \"A short summary of the campaign to display.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title for the card. Typically the subject line of the campaign.\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteCampaignsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_mailchimp_campaign",
+ "description": {
+ "tagline": "Delete a specific Mailchimp campaign.",
+ "detailed": "Use this tool to remove a campaign from your Mailchimp account by specifying the campaign ID. Ideal for managing or cleaning up your Mailchimp campaigns when they are no longer needed."
+ },
+ "return_annotation": "Confirmation of campaign deletion from Mailchimp.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_key"
+ ],
+ "description": "The unique ID for the Mailchimp campaign to delete.",
+ "endpoint_argument_name": "campaign_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/campaigns/{campaign_id}",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Delete campaign",
+ "description": "Remove a campaign from your Mailchimp account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsCancelSend",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "cancel_campaign_send",
+ "description": {
+ "tagline": "Cancel a sent campaign before all recipients receive it.",
+ "detailed": "Use to cancel a Regular or Plain-Text Campaign that has been sent, but not yet delivered to all recipients. Requires Mailchimp Pro."
+ },
+ "return_annotation": "Confirmation of campaign send cancellation.",
+ "arguments": [
+ {
+ "name": "campaign_identifier",
+ "alternative_names": [
+ "campaign_unique_id",
+ "campaign_reference"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to be canceled. Used to specify which campaign's delivery is to be stopped.",
+ "endpoint_argument_name": "campaign_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/cancel-send",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Cancel campaign",
+ "description": "Cancel a Regular or Plain-Text Campaign after you send, before all of your recipients receive it. This feature is included with Mailchimp Pro.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsReplicate",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "replicate_campaign_mailchimp",
+ "description": {
+ "tagline": "Replicate a saved or sent Mailchimp campaign.",
+ "detailed": "This tool replicates a Mailchimp campaign that is in a saved or sent status. Use it to duplicate existing campaigns for reuse or modification."
+ },
+ "return_annotation": "Details of the replicated Mailchimp campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id",
+ "unique_campaign_identifier"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to be replicated.",
+ "endpoint_argument_name": "campaign_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/replicate",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Replicate campaign",
+ "description": "Replicate a campaign in saved or send status.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsSend",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "send_mailchimp_campaign",
+ "description": {
+ "tagline": "Send a Mailchimp campaign immediately or as scheduled.",
+ "detailed": "Use this tool to send a Mailchimp campaign. For RSS campaigns, it will follow the predefined schedule, while all other types of campaigns will be sent immediately."
+ },
+ "return_annotation": "Confirmation of Mailchimp campaign being sent.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id_string",
+ "unique_campaign_id"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to be sent. This is a string value required to trigger the campaign.",
+ "endpoint_argument_name": "campaign_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/send",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Send campaign",
+ "description": "Send a Mailchimp campaign. For RSS Campaigns, the campaign will send according to its schedule. All other campaigns will send immediately.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsSchedule",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "schedule_campaign_delivery",
+ "description": {
+ "tagline": "Schedule a Mailchimp campaign for delivery.",
+ "detailed": "Use this tool to schedule a Mailchimp campaign for delivery. Ideal for standard campaigns; for Multivariate or RSS campaigns, consider using the send action instead."
+ },
+ "return_annotation": "Confirmation of campaign delivery schedule.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id_code",
+ "unique_campaign_identifier"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to be scheduled.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "schedule_delivery_time",
+ "alternative_names": [
+ "delivery_schedule_time",
+ "campaign_send_time"
+ ],
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Must be on the quarter-hour (:00, :15, :30, :45).",
+ "endpoint_argument_name": "schedule_time"
+ },
+ {
+ "name": "batch_delivery_delay",
+ "alternative_names": [
+ "batch_delay_minutes",
+ "batch_delivery_interval"
+ ],
+ "description": "The delay in minutes between batches for campaign delivery.",
+ "endpoint_argument_name": "batch_delivery.batch_delay"
+ },
+ {
+ "name": "number_of_batches_for_campaign",
+ "alternative_names": [
+ "campaign_batches_count",
+ "campaign_send_batches"
+ ],
+ "description": "The number of batches for the campaign send. Determines how the campaign delivery is split into batches.",
+ "endpoint_argument_name": "batch_delivery.batch_count"
+ },
+ {
+ "name": "use_timewarp",
+ "alternative_names": [
+ "enable_timewarp",
+ "timewarp_mode"
+ ],
+ "description": "Set to true to use Timewarp for localizing campaign delivery to recipients' time zones. Cannot be true when using Batch Delivery.",
+ "endpoint_argument_name": "timewarp"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/schedule",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Schedule campaign",
+ "description": "Schedule a campaign for delivery. If you're using Multivariate Campaigns to test send times or sending RSS Campaigns, use the send action instead.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "schedule_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45)."
+ },
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45).",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Schedule Time",
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45).",
+ "format": "date-time"
+ },
+ "schema_required": true
+ },
+ {
+ "name": "timewarp",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/)."
+ },
+ "description": "Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/).",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Timewarp",
+ "description": "Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/)."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "batch_delivery.batch_delay",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The delay, in minutes, between batches."
+ },
+ "description": "The delay, in minutes, between batches.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Batch Delay",
+ "description": "The delay, in minutes, between batches."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "batch_delivery.batch_count",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of batches for the campaign send."
+ },
+ "description": "The number of batches for the campaign send.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Batch Count",
+ "description": "The number of batches for the campaign send."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"schedule_time\"\n ],\n \"properties\": {\n \"schedule_time\": {\n \"type\": \"string\",\n \"title\": \"Schedule Time\",\n \"format\": \"date-time\",\n \"description\": \"The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45).\"\n },\n \"timewarp\": {\n \"type\": \"boolean\",\n \"title\": \"Timewarp\",\n \"description\": \"Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/).\"\n },\n \"batch_delivery\": {\n \"type\": \"object\",\n \"title\": \"Batch Delivery\",\n \"description\": \"Choose whether the campaign should use [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/). Cannot be set to `true` for campaigns using [Timewarp](https://mailchimp.com/help/use-timewarp/).\",\n \"required\": [\n \"batch_delay\",\n \"batch_count\"\n ],\n \"properties\": {\n \"batch_delay\": {\n \"type\": \"integer\",\n \"title\": \"Batch Delay\",\n \"description\": \"The delay, in minutes, between batches.\"\n },\n \"batch_count\": {\n \"type\": \"integer\",\n \"title\": \"Batch Count\",\n \"description\": \"The number of batches for the campaign send.\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsUnschedule",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "unschedule_campaign",
+ "description": {
+ "tagline": "Unschedule a scheduled Mailchimp campaign.",
+ "detailed": "Use this tool to unschedule a Mailchimp campaign that is scheduled but hasn't started sending yet."
+ },
+ "return_annotation": "Confirmation of campaign unscheduling.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "id_of_campaign"
+ ],
+ "description": "The unique identifier for the scheduled campaign to be unscheduled.",
+ "endpoint_argument_name": "campaign_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/unschedule",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Unschedule campaign",
+ "description": "Unschedule a scheduled campaign that hasn't started sending.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsTest",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "send_test_email_campaign",
+ "description": {
+ "tagline": "Send a test email for a specific campaign.",
+ "detailed": "Use this tool to send a test email for a specified Mailchimp marketing campaign. Useful for previewing the campaign before final send."
+ },
+ "return_annotation": "Confirmation of the test email being sent.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id_value",
+ "unique_campaign_identifier"
+ ],
+ "description": "The unique ID for the specific Mailchimp campaign to send the test email for.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "test_email_addresses",
+ "alternative_names": [
+ "email_addresses_for_testing",
+ "testing_email_recipients"
+ ],
+ "description": "An array of email addresses to receive the test email.",
+ "endpoint_argument_name": "test_emails"
+ },
+ {
+ "name": "test_email_send_type",
+ "alternative_names": [
+ "email_test_type",
+ "send_type_of_test_email"
+ ],
+ "description": "Specify the type of test email to send: 'html' or 'plaintext'.",
+ "endpoint_argument_name": "send_type"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/test",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Send test email",
+ "description": "Send a test email.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "test_emails",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of email addresses to send the test email to."
+ },
+ "description": "An array of email addresses to send the test email to.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Test Emails",
+ "description": "An array of email addresses to send the test email to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "schema_required": true
+ },
+ {
+ "name": "send_type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "html",
+ "plaintext"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Choose the type of test email to send."
+ },
+ "description": "Choose the type of test email to send.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Type of email to test",
+ "description": "Choose the type of test email to send.",
+ "enum": [
+ "html",
+ "plaintext"
+ ]
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"test_emails\",\n \"send_type\"\n ],\n \"properties\": {\n \"test_emails\": {\n \"type\": \"array\",\n \"title\": \"Test Emails\",\n \"description\": \"An array of email addresses to send the test email to.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"send_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"html\",\n \"plaintext\"\n ],\n \"title\": \"Type of email to test\",\n \"description\": \"Choose the type of test email to send.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsPause",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "pause_rss_campaign",
+ "description": {
+ "tagline": "Pause an RSS-Driven campaign.",
+ "detailed": "Use this tool to pause an ongoing RSS-Driven campaign in Mailchimp Marketing. It should be called when you need to temporarily stop a campaign without deleting it."
+ },
+ "return_annotation": "Confirmation of the campaign pause action.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_code"
+ ],
+ "description": "The unique identifier for the RSS-Driven campaign you want to pause. It should be a string.",
+ "endpoint_argument_name": "campaign_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/pause",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Pause rss campaign",
+ "description": "Pause an RSS-Driven campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsResume",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "resume_rss_driven_campaign",
+ "description": {
+ "tagline": "Resume an RSS-Driven campaign in Mailchimp.",
+ "detailed": "This tool resumes an RSS-Driven campaign in Mailchimp, allowing previously paused campaigns to continue sending as planned."
+ },
+ "return_annotation": "Confirmation of the resumed campaign action.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_uuid"
+ ],
+ "description": "The unique identifier for the RSS-driven campaign to be resumed.",
+ "endpoint_argument_name": "campaign_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/resume",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Resume rss campaign",
+ "description": "Resume an RSS-Driven campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdActionsCreateResend",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "resend_campaign_to_segments",
+ "description": {
+ "tagline": "Resend a campaign to specific segments.",
+ "detailed": "Use this tool to replicate and resend a Mailchimp campaign to segments like non-openers or new subscribers."
+ },
+ "return_annotation": "Confirmation of campaign resend action.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "unique_campaign_id"
+ ],
+ "description": "The unique ID for identifying the campaign to replicate and resend.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "resend_shortcut_type",
+ "alternative_names": [
+ "resend_type",
+ "shortcut_type_option"
+ ],
+ "description": "Specify the type of segment to resend the campaign to. Options: 'to_non_openers', 'to_new_subscribers', 'to_non_clickers', 'to_non_purchasers'. Default is 'to_non_openers'.",
+ "endpoint_argument_name": "shortcut_type"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/actions/create-resend",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Resend campaign",
+ "description": "Remove the guesswork for resending a campaign to certain segments. You can use this endpoint as a shortcut to replicate a campaign and resend it to common segments, such as those who didn't open the campaign, or any new subscribers since it was sent.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "shortcut_type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "to_non_openers",
+ "to_new_subscribers",
+ "to_non_clickers",
+ "to_non_purchasers"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Which campaign resend shortcut to use. Default is `to_non_openers`."
+ },
+ "description": "Which campaign resend shortcut to use. Default is `to_non_openers`.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Resend Shortcut Type",
+ "description": "Which campaign resend shortcut to use. Default is `to_non_openers`.",
+ "enum": [
+ "to_non_openers",
+ "to_new_subscribers",
+ "to_non_clickers",
+ "to_non_purchasers"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": false,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"shortcut_type\": {\n \"type\": \"string\",\n \"title\": \"Resend Shortcut Type\",\n \"description\": \"Which campaign resend shortcut to use. Default is `to_non_openers`.\",\n \"enum\": [\n \"to_non_openers\",\n \"to_new_subscribers\",\n \"to_non_clickers\",\n \"to_non_purchasers\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaignsIdContent",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_content",
+ "description": {
+ "tagline": "Retrieve the HTML and plain-text content for a Mailchimp campaign.",
+ "detailed": "Use this tool to get the content of a specific Mailchimp campaign by providing its campaign ID. The response includes both HTML and plain-text content, useful for viewing or analyzing email campaigns in detail."
+ },
+ "return_annotation": "HTML and plain-text content for a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_unique_id"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to retrieve content for.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "selected_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation to specify sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude when retrieving campaign content. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaigns/{campaign_id}/content",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Get campaign content",
+ "description": "Get the the HTML and plain-text content for a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "putCampaignsIdContent",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "set_campaign_content",
+ "description": {
+ "tagline": "Set the content for a campaign in Mailchimp.",
+ "detailed": "Use this tool to update or set the content for a specific campaign in Mailchimp. It is called when you need to change or define what content is included in a campaign."
+ },
+ "return_annotation": "Updates the content of a specified campaign.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_unique_id"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to set the content for. This ID is required to specify which campaign you are updating.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "campaign_content",
+ "alternative_names": [
+ "email_content",
+ "campaign_body"
+ ],
+ "description": "A JSON object defining the content of the campaign, including HTML, plain text, template, and more.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PUT",
+ "path": "/campaigns/{campaign_id}/content",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Set campaign content",
+ "description": "Set the content for a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "plain_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When importing a campaign, the URL where the HTML lives."
+ },
+ "template": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ },
+ "inner_properties": null,
+ "description": "Use this template to generate the HTML content of the campaign"
+ },
+ "archive": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "archive_content": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ },
+ "inner_properties": null,
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/)."
+ },
+ "variate_contents": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "content_label": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The label used to identify the content option."
+ },
+ "plain_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When importing a campaign, the URL for the HTML."
+ },
+ "template": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ },
+ "inner_properties": null,
+ "description": "Use this template to generate the HTML content for the campaign."
+ },
+ "archive": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "archive_content": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ },
+ "inner_properties": null,
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/)."
+ }
+ },
+ "description": "Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Campaign Content",
+ "description": "The HTML and plain-text content for a campaign",
+ "properties": {
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "type": "string",
+ "title": "Campaign URL",
+ "description": "When importing a campaign, the URL where the HTML lives."
+ },
+ "template": {
+ "type": "object",
+ "title": "Template Content",
+ "description": "Use this template to generate the HTML content of the campaign",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "type": "object",
+ "title": "Template Sections",
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template.",
+ "properties": {}
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "archive": {
+ "type": "object",
+ "title": "Upload Archive",
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).",
+ "properties": {
+ "archive_content": {
+ "type": "string",
+ "title": "Archive Content",
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "type": "string",
+ "title": "Archive Type",
+ "description": "The type of encoded file. Defaults to zip.",
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ]
+ }
+ },
+ "required": [
+ "archive_content"
+ ]
+ },
+ "variate_contents": {
+ "type": "array",
+ "title": "Variate Contents",
+ "description": "Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "content_label": {
+ "type": "string",
+ "title": "Content Label",
+ "description": "The label used to identify the content option."
+ },
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "type": "string",
+ "title": "Campaign URL",
+ "description": "When importing a campaign, the URL for the HTML."
+ },
+ "template": {
+ "type": "object",
+ "title": "Template Content",
+ "description": "Use this template to generate the HTML content for the campaign.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "type": "object",
+ "title": "Template Sections",
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template.",
+ "properties": {}
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "archive": {
+ "type": "object",
+ "title": "Upload Archive",
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).",
+ "properties": {
+ "archive_content": {
+ "type": "string",
+ "title": "Archive Content",
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "type": "string",
+ "title": "Archive Type",
+ "description": "The type of encoded file. Defaults to zip.",
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ]
+ }
+ },
+ "required": [
+ "archive_content"
+ ]
+ }
+ },
+ "required": [
+ "content_label"
+ ]
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Content\",\n \"description\": \"The HTML and plain-text content for a campaign\",\n \"properties\": {\n \"plain_text\": {\n \"type\": \"string\",\n \"title\": \"Plain Text\",\n \"description\": \"The plain-text portion of the campaign. If left unspecified, we'll generate this automatically.\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Campaign HTML\",\n \"description\": \"The raw HTML for the campaign.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Campaign URL\",\n \"description\": \"When importing a campaign, the URL where the HTML lives.\"\n },\n \"template\": {\n \"type\": \"object\",\n \"title\": \"Template Content\",\n \"description\": \"Use this template to generate the HTML content of the campaign\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n },\n \"sections\": {\n \"type\": \"object\",\n \"title\": \"Template Sections\",\n \"description\": \"Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template.\"\n }\n }\n },\n \"archive\": {\n \"type\": \"object\",\n \"title\": \"Upload Archive\",\n \"description\": \"Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).\",\n \"required\": [\n \"archive_content\"\n ],\n \"properties\": {\n \"archive_content\": {\n \"type\": \"string\",\n \"title\": \"Archive Content\",\n \"description\": \"The base64-encoded representation of the archive file.\"\n },\n \"archive_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"zip\",\n \"tar.gz\",\n \"tar.bz2\",\n \"tar\",\n \"tgz\",\n \"tbz\"\n ],\n \"title\": \"Archive Type\",\n \"description\": \"The type of encoded file. Defaults to zip.\"\n }\n }\n },\n \"variate_contents\": {\n \"type\": \"array\",\n \"title\": \"Variate Contents\",\n \"description\": \"Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided.\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"content_label\"\n ],\n \"properties\": {\n \"content_label\": {\n \"type\": \"string\",\n \"title\": \"Content Label\",\n \"description\": \"The label used to identify the content option.\"\n },\n \"plain_text\": {\n \"type\": \"string\",\n \"title\": \"Plain Text\",\n \"description\": \"The plain-text portion of the campaign. If left unspecified, we'll generate this automatically.\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Campaign HTML\",\n \"description\": \"The raw HTML for the campaign.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Campaign URL\",\n \"description\": \"When importing a campaign, the URL for the HTML.\"\n },\n \"template\": {\n \"type\": \"object\",\n \"title\": \"Template Content\",\n \"description\": \"Use this template to generate the HTML content for the campaign.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n },\n \"sections\": {\n \"type\": \"object\",\n \"title\": \"Template Sections\",\n \"description\": \"Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template.\"\n }\n }\n },\n \"archive\": {\n \"type\": \"object\",\n \"title\": \"Upload Archive\",\n \"description\": \"Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).\",\n \"required\": [\n \"archive_content\"\n ],\n \"properties\": {\n \"archive_content\": {\n \"type\": \"string\",\n \"title\": \"Archive Content\",\n \"description\": \"The base64-encoded representation of the archive file.\"\n },\n \"archive_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"zip\",\n \"tar.gz\",\n \"tar.bz2\",\n \"tar\",\n \"tgz\",\n \"tbz\"\n ],\n \"title\": \"Archive Type\",\n \"description\": \"The type of encoded file. Defaults to zip.\"\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaignsIdFeedback",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_mailchimp_campaign_feedback",
+ "description": {
+ "tagline": "Retrieve feedback comments for a Mailchimp campaign.",
+ "detailed": "Use this tool to get team feedback for a specific Mailchimp campaign by providing the campaign ID."
+ },
+ "return_annotation": "Feedback comments from a Mailchimp campaign.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_unique_id"
+ ],
+ "description": "The unique identifier for the specific Mailchimp campaign from which to retrieve feedback.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "return_fields",
+ "select_fields"
+ ],
+ "description": "A comma-separated list of specific fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "fields_ignore_list",
+ "exclusion_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the feedback data, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaigns/{campaign_id}/feedback",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "List campaign feedback",
+ "description": "Get team feedback while you're working together on a Mailchimp campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCampaignsIdFeedback",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_campaign_feedback",
+ "description": {
+ "tagline": "Add feedback to a specific Mailchimp campaign.",
+ "detailed": "Use this tool to submit feedback for a particular campaign in Mailchimp. This is helpful when users want to provide input or comments about a campaign."
+ },
+ "return_annotation": "Feedback submission status for the campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "mailchimp_campaign_id"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to which feedback will be added.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "feedback_content",
+ "alternative_names": [
+ "feedback_message",
+ "feedback_text"
+ ],
+ "description": "The content of the feedback to be added to the campaign.",
+ "endpoint_argument_name": "message"
+ },
+ {
+ "name": "editable_block_id",
+ "alternative_names": [
+ "feedback_block_id",
+ "campaign_block_id"
+ ],
+ "description": "The ID of the editable block the feedback addresses in the campaign.",
+ "endpoint_argument_name": "block_id"
+ },
+ {
+ "name": "is_feedback_complete",
+ "alternative_names": [
+ "feedback_is_complete_status",
+ "complete_feedback_status"
+ ],
+ "description": "Indicates whether the feedback is complete. Use 'true' if complete and 'false' otherwise.",
+ "endpoint_argument_name": "is_complete"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/campaigns/{campaign_id}/feedback",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Add campaign feedback",
+ "description": "Add feedback on a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "block_id",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "description": "The block id for the editable block that the feedback addresses.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "message",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the feedback."
+ },
+ "description": "The content of the feedback.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "is_complete",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of feedback."
+ },
+ "description": "The status of feedback.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Feedback\",\n \"description\": \"A specific feedback message from a specific campaign.\",\n \"required\": [\n \"message\"\n ],\n \"properties\": {\n \"block_id\": {\n \"type\": \"integer\",\n \"title\": \"Block ID\",\n \"description\": \"The block id for the editable block that the feedback addresses.\"\n },\n \"message\": {\n \"type\": \"string\",\n \"title\": \"Message\",\n \"description\": \"The content of the feedback.\"\n },\n \"is_complete\": {\n \"type\": \"boolean\",\n \"title\": \"Complete\",\n \"description\": \"The status of feedback.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaignsIdFeedbackId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_feedback_message",
+ "description": {
+ "tagline": "Retrieve a specific feedback message from a campaign.",
+ "detailed": "Use this tool to get detailed feedback from a specific campaign by providing the campaign and feedback identifiers."
+ },
+ "return_annotation": "Specific feedback message from a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_value"
+ ],
+ "description": "The unique identifier for the campaign to retrieve the specific feedback message.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "feedback_message_id",
+ "alternative_names": [
+ "unique_feedback_message_id",
+ "feedback_id_for_message"
+ ],
+ "description": "The unique identifier for the feedback message to retrieve from the campaign.",
+ "endpoint_argument_name": "feedback_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_feedback",
+ "alternative_names": [
+ "ignore_fields_in_feedback",
+ "remove_fields_from_feedback"
+ ],
+ "description": "A comma-separated list of fields to exclude from the feedback. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaigns/{campaign_id}/feedback/{feedback_id}",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Get campaign feedback message",
+ "description": "Get a specific feedback message from a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "feedback_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "description": "The unique id for the feedback message.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchCampaignsIdFeedbackId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_campaign_feedback",
+ "description": {
+ "tagline": "Update specific feedback for a Mailchimp campaign.",
+ "detailed": "Use this tool to update a particular feedback message for a specific Mailchimp marketing campaign. This is useful when corrections or additional details need to be added to existing feedback."
+ },
+ "return_annotation": "Confirmation of feedback update for the campaign.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_key"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to be updated.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "feedback_message_id",
+ "alternative_names": [
+ "feedback_unique_id",
+ "feedback_identifier"
+ ],
+ "description": "The unique identifier for the specific feedback message to update in the campaign.",
+ "endpoint_argument_name": "feedback_id"
+ },
+ {
+ "name": "editable_block_id",
+ "alternative_names": [
+ "section_id",
+ "content_block_id"
+ ],
+ "description": "The ID of the editable block that the feedback addresses within the campaign.",
+ "endpoint_argument_name": "block_id"
+ },
+ {
+ "name": "feedback_message",
+ "alternative_names": [
+ "comment_content",
+ "feedback_content"
+ ],
+ "description": "The text content of the feedback message to be updated.",
+ "endpoint_argument_name": "message"
+ },
+ {
+ "name": "feedback_is_complete",
+ "alternative_names": [
+ "feedback_completion_status",
+ "is_feedback_complete"
+ ],
+ "description": "Indicates if the feedback is marked as complete. Use true for complete and false for incomplete.",
+ "endpoint_argument_name": "is_complete"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/campaigns/{campaign_id}/feedback/{feedback_id}",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Update campaign feedback message",
+ "description": "Update a specific feedback message for a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "feedback_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "description": "The unique id for the feedback message.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "block_id",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "description": "The block id for the editable block that the feedback addresses.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "message",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the feedback."
+ },
+ "description": "The content of the feedback.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "is_complete",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of feedback."
+ },
+ "description": "The status of feedback.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Feedback\",\n \"description\": \"A specific feedback message from a specific campaign.\",\n \"properties\": {\n \"block_id\": {\n \"type\": \"integer\",\n \"title\": \"Block ID\",\n \"description\": \"The block id for the editable block that the feedback addresses.\"\n },\n \"message\": {\n \"type\": \"string\",\n \"title\": \"Message\",\n \"description\": \"The content of the feedback.\"\n },\n \"is_complete\": {\n \"type\": \"boolean\",\n \"title\": \"Complete\",\n \"description\": \"The status of feedback.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteCampaignsIdFeedbackId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "remove_campaign_feedback",
+ "description": {
+ "tagline": "Remove a specific feedback message from a campaign.",
+ "detailed": "Use this tool to delete a feedback message associated with a specific campaign in Mailchimp."
+ },
+ "return_annotation": "Acknowledgment of the feedback removal.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_value"
+ ],
+ "description": "A unique identifier for the campaign from which you want to remove feedback.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "feedback_message_id",
+ "alternative_names": [
+ "feedback_identifier",
+ "feedback_message_identifier"
+ ],
+ "description": "The unique identifier for the feedback message to be removed from the campaign.",
+ "endpoint_argument_name": "feedback_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/campaigns/{campaign_id}/feedback/{feedback_id}",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Delete campaign feedback message",
+ "description": "Remove a specific feedback message for a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "feedback_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "description": "The unique id for the feedback message.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getCampaignsIdSendChecklist",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "review_campaign_send_checklist",
+ "description": {
+ "tagline": "Review the send checklist for a Mailchimp campaign.",
+ "detailed": "This tool is used to review the send checklist for a specific Mailchimp campaign. It helps to identify and resolve any potential issues before sending the campaign."
+ },
+ "return_annotation": "Provides a review of the send checklist for a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id",
+ "campaign_identifier"
+ ],
+ "description": "The unique identifier for the campaign in Mailchimp.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "fields_selection"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_parameters"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/campaigns/{campaign_id}/send-checklist",
+ "tags": [
+ "campaigns"
+ ],
+ "summary": "Get campaign send checklist",
+ "description": "Review the send checklist for a campaign, and resolve any issues before sending.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getConnectedSites",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_connected_sites",
+ "description": {
+ "tagline": "Retrieve all connected sites from a Mailchimp account.",
+ "detailed": "Use this tool to get a list of all sites connected to a Mailchimp account. Ideal for managing or reviewing the connected site configurations."
+ },
+ "return_annotation": "List of all connected sites in an account.",
+ "arguments": [
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "fields_to_include",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "excluded_field_names"
+ ],
+ "description": "A list of fields to exclude, using dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_limit",
+ "number_of_records"
+ ],
+ "description": "The number of records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_skip",
+ "pagination_start_point"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/connected-sites",
+ "tags": [
+ "connectedSites"
+ ],
+ "summary": "List connected sites",
+ "description": "Get all connected sites in an account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postConnectedSites",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_connected_site",
+ "description": {
+ "tagline": "Create a new Mailchimp connected site.",
+ "detailed": "This tool is used to create a new connected site in Mailchimp. It should be called whenever you need to integrate a new site with Mailchimp's marketing tools."
+ },
+ "return_annotation": "Information about the newly created connected site on Mailchimp.",
+ "arguments": [
+ {
+ "name": "site_unique_identifier",
+ "alternative_names": [
+ "site_id",
+ "unique_site_id"
+ ],
+ "description": "A unique identifier string for the site. This is used to distinguish different connected sites in Mailchimp.",
+ "endpoint_argument_name": "foreign_id"
+ },
+ {
+ "name": "connected_site_domain",
+ "alternative_names": [
+ "site_domain",
+ "domain_name"
+ ],
+ "description": "The domain of the site you want to connect to Mailchimp.",
+ "endpoint_argument_name": "domain"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/connected-sites",
+ "tags": [
+ "connectedSites"
+ ],
+ "summary": "Add connected site",
+ "description": "Create a new Mailchimp connected site.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "foreign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "description": "The unique identifier for the site.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the site.",
+ "example": "MC001"
+ },
+ "schema_required": true
+ },
+ {
+ "name": "domain",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The connected site domain."
+ },
+ "description": "The connected site domain.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The connected site domain.",
+ "example": "example.com"
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Connected Site\",\n \"description\": \"Information about a specific connected site.\",\n \"required\": [\n \"foreign_id\",\n \"domain\"\n ],\n \"properties\": {\n \"foreign_id\": {\n \"type\": \"string\",\n \"title\": \"Connected Site Foreign ID\",\n \"description\": \"The unique identifier for the site.\",\n \"example\": \"MC001\"\n },\n \"domain\": {\n \"type\": \"string\",\n \"title\": \"Domain\",\n \"description\": \"The connected site domain.\",\n \"example\": \"example.com\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getConnectedSitesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_connected_site_info",
+ "description": {
+ "tagline": "Retrieve details of a specific connected site.",
+ "detailed": "Use this tool to get information about a connected site using its ID. It provides various details related to the site."
+ },
+ "return_annotation": "Information about the specified connected site.",
+ "arguments": [
+ {
+ "name": "connected_site_identifier",
+ "alternative_names": [
+ "site_id",
+ "site_identifier"
+ ],
+ "description": "The unique identifier for the connected site to retrieve its information.",
+ "endpoint_argument_name": "connected_site_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "Specify a comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "fields_to_exclude_list"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/connected-sites/{connected_site_id}",
+ "tags": [
+ "connectedSites"
+ ],
+ "summary": "Get connected site",
+ "description": "Get information about a specific connected site.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "connected_site_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "description": "The unique identifier for the site.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteConnectedSitesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "remove_mailchimp_connected_site",
+ "description": {
+ "tagline": "Remove a connected site from your Mailchimp account.",
+ "detailed": "Use this tool to delete a connected site from your Mailchimp account, removing its integration."
+ },
+ "return_annotation": "Confirmation of site removal.",
+ "arguments": [
+ {
+ "name": "site_identifier",
+ "alternative_names": [
+ "site_id",
+ "connected_site_identifier"
+ ],
+ "description": "The unique identifier for the connected site you wish to remove from your Mailchimp account.",
+ "endpoint_argument_name": "connected_site_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/connected-sites/{connected_site_id}",
+ "tags": [
+ "connectedSites"
+ ],
+ "summary": "Delete connected site",
+ "description": "Remove a connected site from your Mailchimp account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "connected_site_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "description": "The unique identifier for the site.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postConnectedSitesIdActionsVerifyScriptInstallation",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "verify_script_installation",
+ "description": {
+ "tagline": "Verify if the Mailchimp connected site script is installed.",
+ "detailed": "This tool checks if a Mailchimp connected site's script has been correctly installed using the script URL or fragment. Use it to confirm script deployment."
+ },
+ "return_annotation": "Confirmation of script installation status on a connected site.",
+ "arguments": [
+ {
+ "name": "site_unique_identifier",
+ "alternative_names": [
+ "site_id",
+ "unique_site_id"
+ ],
+ "description": "The unique identifier for the Mailchimp connected site to verify script installation.",
+ "endpoint_argument_name": "connected_site_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/connected-sites/{connected_site_id}/actions/verify-script-installation",
+ "tags": [
+ "connectedSites"
+ ],
+ "summary": "Verify connected site script",
+ "description": "Verify that the connected sites script has been installed, either via the script URL or fragment.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "connected_site_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "description": "The unique identifier for the site.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getConversations",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": false,
+ "should_skip": true,
+ "skip_reason": "Endpoint is marked as deprecated",
+ "wrapper_tool": null,
+ "method": "GET",
+ "path": "/conversations",
+ "tags": [
+ "conversations"
+ ],
+ "summary": "List conversations",
+ "description": "Get a list of conversations for the account. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "has_unread_messages",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the conversation has any unread messages."
+ },
+ "description": "Whether the conversation has any unread messages.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the list."
+ },
+ "description": "The unique id for the list.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getConversationsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": false,
+ "should_skip": true,
+ "skip_reason": "Endpoint is marked as deprecated",
+ "wrapper_tool": null,
+ "method": "GET",
+ "path": "/conversations/{conversation_id}",
+ "tags": [
+ "conversations"
+ ],
+ "summary": "Get conversation",
+ "description": "Get details about an individual conversation. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "conversation_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the conversation."
+ },
+ "description": "The unique id for the conversation.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getConversationsIdMessages",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": false,
+ "should_skip": true,
+ "skip_reason": "Endpoint is marked as deprecated",
+ "wrapper_tool": null,
+ "method": "GET",
+ "path": "/conversations/{conversation_id}/messages",
+ "tags": [
+ "conversations"
+ ],
+ "summary": "List messages",
+ "description": "Get messages from a specific conversation. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "is_read",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether a conversation message has been marked as read."
+ },
+ "description": "Whether a conversation message has been marked as read.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_timestamp",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to messages created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to messages created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_timestamp",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to messages created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to messages created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "conversation_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the conversation."
+ },
+ "description": "The unique id for the conversation.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getConversationsIdMessagesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": false,
+ "should_skip": true,
+ "skip_reason": "Endpoint is marked as deprecated",
+ "wrapper_tool": null,
+ "method": "GET",
+ "path": "/conversations/{conversation_id}/messages/{message_id}",
+ "tags": [
+ "conversations"
+ ],
+ "summary": "Get message",
+ "description": "Get an individual message in a conversation. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "conversation_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the conversation."
+ },
+ "description": "The unique id for the conversation.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "message_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the conversation message."
+ },
+ "description": "The unique id for the conversation message.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postCustomerJourneysJourneysIdStepsIdActionsTrigger",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "trigger_automation_step",
+ "description": {
+ "tagline": "Trigger a step in a Mailchimp automation flow.",
+ "detailed": "Use this tool to activate a specific step in an existing Mailchimp automation flow. It requires the journey and step IDs, which are provided during the creation process in the Customer Journey API."
+ },
+ "return_annotation": "Confirmation of the triggered automation step.",
+ "arguments": [
+ {
+ "name": "flow_id",
+ "alternative_names": [
+ "journey_flow_id",
+ "automation_flow_id"
+ ],
+ "description": "The unique identifier for the automation flow to trigger a specific step.",
+ "endpoint_argument_name": "journey_id"
+ },
+ {
+ "name": "step_identifier",
+ "alternative_names": [
+ "step_id_value",
+ "step_unique_id"
+ ],
+ "description": "The unique identifier for the step in the Mailchimp automation flow.",
+ "endpoint_argument_name": "step_id"
+ },
+ {
+ "name": "list_member_email_address",
+ "alternative_names": [
+ "member_email",
+ "subscriber_email"
+ ],
+ "description": "The email address of the list member to trigger the automation step for.",
+ "endpoint_argument_name": "email_address"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/customer-journeys/journeys/{journey_id}/steps/{step_id}/actions/trigger",
+ "tags": [
+ "customerJourneys"
+ ],
+ "summary": "Customer Journeys API trigger for a contact",
+ "description": "A step trigger in an Automation flow. To use it, create a starting point or step from the Automation flow builder in the app using the Customer Journey API condition. We\u2019ll provide a url during the process that includes the {journey_id} and {step_id}. You\u2019ll then be able to use this endpoint to trigger the condition for the posted contact.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "journey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the flow."
+ },
+ "description": "The id for the flow.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "step_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the Step."
+ },
+ "description": "The id for the Step.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "email_address",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "description": "The list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber in Automation flow's audience\",\n \"description\": \"Information about subscribers in a Automation flows's audience.\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The list member's email address.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getFileManagerFiles",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_file_manager_files",
+ "description": {
+ "tagline": "Retrieve images and files from the Mailchimp File Manager.",
+ "detailed": "Use this tool to get a list of all images and files stored in the File Manager of the Mailchimp account. It provides access to media assets used in marketing campaigns."
+ },
+ "return_annotation": "A list of images and files stored in the account's File Manager.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated fields to omit from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "record_limit",
+ "max_records"
+ ],
+ "description": "Specifies the number of records to return. Default is 10; maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_count",
+ "start_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "file_type",
+ "alternative_names": [
+ "media_type",
+ "document_type"
+ ],
+ "description": "The file type to filter File Manager files. Expected as a string value.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "file_created_by_user",
+ "alternative_names": [
+ "file_creator_user",
+ "file_author_user"
+ ],
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "endpoint_argument_name": "created_by"
+ },
+ {
+ "name": "restrict_files_before_date",
+ "alternative_names": [
+ "limit_files_before_date",
+ "filter_before_date"
+ ],
+ "description": "Restrict the response to files created before the specified ISO 8601 date.",
+ "endpoint_argument_name": "before_created_at"
+ },
+ {
+ "name": "created_after_date",
+ "alternative_names": [
+ "date_after_created",
+ "start_date"
+ ],
+ "description": "Files created after this date will be included in the response. Use ISO 8601 format: 2015-10-21T15:41:36+00:00.",
+ "endpoint_argument_name": "since_created_at"
+ },
+ {
+ "name": "file_sort_field",
+ "alternative_names": [
+ "sort_by_field",
+ "sorting_parameter"
+ ],
+ "description": "Specify the field to sort the files by, such as 'name', 'date', etc.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "order_direction",
+ "sorting_direction"
+ ],
+ "description": "Sets the order direction for sorting results. Use 'ASC' for ascending and 'DESC' for descending.",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/file-manager/files",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "List stored files",
+ "description": "Get a list of available images and files stored in the File Manager for the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The file type for the File Manager file."
+ },
+ "description": "The file type for the File Manager file.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "created_by",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postFileManagerFiles",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "upload_file_to_file_manager",
+ "description": {
+ "tagline": "Upload a new file or image to the File Manager.",
+ "detailed": "Use this tool to upload files or images to the File Manager, enhancing content management."
+ },
+ "return_annotation": "Confirmation of file upload to the File Manager.",
+ "arguments": [
+ {
+ "name": "file_name",
+ "alternative_names": [
+ "document_name",
+ "image_name"
+ ],
+ "description": "The name to be assigned to the uploaded file.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "file_content_base64",
+ "alternative_names": [
+ "file_data_encoded",
+ "encoded_file_contents"
+ ],
+ "description": "The base64-encoded contents of the file to be uploaded.",
+ "endpoint_argument_name": "file_data"
+ },
+ {
+ "name": "folder_id",
+ "alternative_names": [
+ "directory_id",
+ "folder_identifier"
+ ],
+ "description": "The ID of the folder where the file will be uploaded. This should be an integer.",
+ "endpoint_argument_name": "folder_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/file-manager/files",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Add file",
+ "description": "Upload a new image or file to the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder."
+ },
+ "description": "The id of the folder.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the file."
+ },
+ "description": "The name of the file.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "file_data",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded contents of the file."
+ },
+ "description": "The base64-encoded contents of the file.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "File Data",
+ "description": "The base64-encoded contents of the file."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery File\",\n \"description\": \"An individual file listed in the File Manager.\",\n \"required\": [\n \"name\",\n \"file_data\"\n ],\n \"properties\": {\n \"folder_id\": {\n \"type\": \"integer\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder.\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"File Name\",\n \"description\": \"The name of the file.\"\n },\n \"file_data\": {\n \"type\": \"string\",\n \"title\": \"File Data\",\n \"description\": \"The base64-encoded contents of the file.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getFileManagerFilesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_file_manager_file_info",
+ "description": {
+ "tagline": "Retrieve information about a specific file from Mailchimp's File Manager.",
+ "detailed": "Use this tool to get detailed information about a specific file stored in Mailchimp's File Manager using the file ID."
+ },
+ "return_annotation": "Information about a specific file in the File Manager.",
+ "arguments": [
+ {
+ "name": "file_manager_file_id",
+ "alternative_names": [
+ "file_id_for_manager",
+ "manager_file_unique_id"
+ ],
+ "description": "The unique ID for the File Manager file to retrieve its information.",
+ "endpoint_argument_name": "file_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "included_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation to specify sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/file-manager/files/{file_id}",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Get file",
+ "description": "Get information about a specific file in the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "file_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "description": "The unique id for the File Manager file.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchFileManagerFilesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_file_manager_file",
+ "description": {
+ "tagline": "Update a file in the Mailchimp File Manager.",
+ "detailed": "Use this tool to update an existing file in Mailchimp's File Manager by providing the file ID. It is useful for changing file details or replacing content."
+ },
+ "return_annotation": "Details of the updated file in the File Manager.",
+ "arguments": [
+ {
+ "name": "file_manager_file_id",
+ "alternative_names": [
+ "file_id_value",
+ "unique_file_identifier"
+ ],
+ "description": "The unique identifier for the File Manager file to be updated.",
+ "endpoint_argument_name": "file_id"
+ },
+ {
+ "name": "folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "folder_number"
+ ],
+ "description": "The ID of the folder. Set to `0` to remove a file from its current folder.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "file_name",
+ "alternative_names": [
+ "file_title",
+ "document_name"
+ ],
+ "description": "Specify the new name for the file in the File Manager.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/file-manager/files/{file_id}",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Update file",
+ "description": "Update a file in the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "file_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "description": "The unique id for the File Manager file.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder."
+ },
+ "description": "The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the file."
+ },
+ "description": "The name of the file.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery File\",\n \"description\": \"An individual file listed in the File Manager.\",\n \"properties\": {\n \"folder_id\": {\n \"type\": \"integer\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder.\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"File Name\",\n \"description\": \"The name of the file.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteFileManagerFilesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_file_manager_file",
+ "description": {
+ "tagline": "Remove a specific file from Mailchimp's File Manager.",
+ "detailed": "Use this tool to delete a specific file by its ID from Mailchimp's File Manager. It helps manage and organize files by removing unwanted or outdated ones."
+ },
+ "return_annotation": "Confirmation of file deletion from the File Manager.",
+ "arguments": [
+ {
+ "name": "file_manager_file_id",
+ "alternative_names": [
+ "file_id_unique",
+ "manager_file_id"
+ ],
+ "description": "The unique identifier for the file to be deleted from Mailchimp's File Manager.",
+ "endpoint_argument_name": "file_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/file-manager/files/{file_id}",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Delete file",
+ "description": "Remove a specific file from the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "file_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "description": "The unique id for the File Manager file.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getFileManagerFolders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "list_file_manager_folders",
+ "description": {
+ "tagline": "Retrieve a list of folders from the File Manager.",
+ "detailed": "This tool is used to obtain a list of all folders available in the File Manager, which is helpful for organizing and accessing files efficiently."
+ },
+ "return_annotation": "A list of all folders in the File Manager.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "fields_list"
+ ],
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_to_return_count",
+ "file_manager_folders_count"
+ ],
+ "description": "Specify the number of folder records to return, from 1 to 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_skip_count",
+ "pagination_skip_number"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "created_by_user",
+ "alternative_names": [
+ "file_creator",
+ "user_creator"
+ ],
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "endpoint_argument_name": "created_by"
+ },
+ {
+ "name": "restrict_to_files_created_before",
+ "alternative_names": [
+ "limit_to_files_before_date",
+ "filter_by_creation_date_before"
+ ],
+ "description": "Restrict the response to files created before the specified date using ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00.",
+ "endpoint_argument_name": "before_created_at"
+ },
+ {
+ "name": "created_after_date",
+ "alternative_names": [
+ "files_created_after",
+ "after_creation_date"
+ ],
+ "description": "Restrict the response to files created after the specified date in ISO 8601 format.",
+ "endpoint_argument_name": "since_created_at"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/file-manager/folders",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "List folders",
+ "description": "Get a list of all folders in the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "created_by",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postFileManagerFolders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_new_file_manager_folder",
+ "description": {
+ "tagline": "Create a new folder in Mailchimp's File Manager.",
+ "detailed": "Use this tool to create a new folder in Mailchimp's File Manager. This can be helpful for organizing files within your Mailchimp account."
+ },
+ "return_annotation": "Details about the created folder in the File Manager.",
+ "arguments": [
+ {
+ "name": "folder_name",
+ "alternative_names": [
+ "directory_name",
+ "new_folder_name"
+ ],
+ "description": "The desired name for the new folder in File Manager.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/file-manager/folders",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Add folder",
+ "description": "Create a new folder in the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "description": "The name of the folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery Folder\",\n \"description\": \"An individual folder listed in the File Manager.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getFileManagerFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_file_manager_folder_info",
+ "description": {
+ "tagline": "Retrieve details of a specific folder from File Manager.",
+ "detailed": "Use this tool to get information about a particular folder in Mailchimp's File Manager. It's useful for accessing folder-specific details, such as name and metadata."
+ },
+ "return_annotation": "Information about a specific File Manager folder.",
+ "arguments": [
+ {
+ "name": "file_manager_folder_id",
+ "alternative_names": [
+ "folder_unique_identifier",
+ "file_manager_directory_id"
+ ],
+ "description": "The unique identifier for the File Manager folder to retrieve.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of specific fields to return, use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/file-manager/folders/{folder_id}",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Get folder",
+ "description": "Get information about a specific folder in the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "description": "The unique id for the File Manager folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchFileManagerFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_file_manager_folder",
+ "description": {
+ "tagline": "Update a specific File Manager folder in Mailchimp.",
+ "detailed": "Use this tool to update the details of a specific folder in Mailchimp's File Manager. Useful for organizing files within the platform."
+ },
+ "return_annotation": "Details of the updated File Manager folder.",
+ "arguments": [
+ {
+ "name": "file_manager_folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "file_manager_folder_identifier"
+ ],
+ "description": "The unique identifier for the File Manager folder to update.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "folder_name",
+ "alternative_names": [
+ "folder_title",
+ "directory_name"
+ ],
+ "description": "The new name for the File Manager folder. It should be a string value.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/file-manager/folders/{folder_id}",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Update folder",
+ "description": "Update a specific File Manager folder.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "description": "The unique id for the File Manager folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "description": "The name of the folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery Folder\",\n \"description\": \"An individual folder listed in the File Manager.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteFileManagerFoldersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_file_manager_folder",
+ "description": {
+ "tagline": "Delete a specific folder in the File Manager.",
+ "detailed": "Use this tool to delete a folder from Mailchimp's File Manager by specifying the folder ID."
+ },
+ "return_annotation": "Confirmation of folder deletion.",
+ "arguments": [
+ {
+ "name": "file_manager_folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "file_manager_folder_identifier"
+ ],
+ "description": "The unique identifier for the folder to be deleted in the File Manager.",
+ "endpoint_argument_name": "folder_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/file-manager/folders/{folder_id}",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "Delete folder",
+ "description": "Delete a specific folder in the File Manager.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "description": "The unique id for the File Manager folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getFileManagerFoldersFiles",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_folder_files",
+ "description": {
+ "tagline": "Retrieve files and images from a specific folder.",
+ "detailed": "Use this tool to get a list of available images and files stored in a specified folder within Mailchimp's file manager. Ideal for accessing and managing digital assets."
+ },
+ "return_annotation": "List of images and files stored in the specified folder.",
+ "arguments": [
+ {
+ "name": "file_manager_folder_id",
+ "alternative_names": [
+ "folder_unique_id",
+ "folder_identifier"
+ ],
+ "description": "The unique identifier for the specific File Manager folder to retrieve files from.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "selected_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "alternative_names": [
+ "records_to_return",
+ "max_records"
+ ],
+ "description": "Specifies the number of files to retrieve, with a default of 10 and a maximum of 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "pagination_skip_count",
+ "record_skip_number"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0. Use this to access pages beyond the first one.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "file_type",
+ "alternative_names": [
+ "document_type",
+ "asset_type"
+ ],
+ "description": "Specifies the file type to filter files in the folder. Use to retrieve specific types like 'image', 'document', etc.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "file_creator_user",
+ "alternative_names": [
+ "file_owner",
+ "uploader_user"
+ ],
+ "description": "Mailchimp account user who created the File Manager file. Filter results by this user's contributions.",
+ "endpoint_argument_name": "created_by"
+ },
+ {
+ "name": "restrict_files_before_date",
+ "alternative_names": [
+ "limit_files_before_date",
+ "filter_files_by_date_before"
+ ],
+ "description": "Restrict response to files created before this date using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "before_created_at"
+ },
+ {
+ "name": "filter_files_created_after",
+ "alternative_names": [
+ "files_from_date",
+ "newer_files_since"
+ ],
+ "description": "Restrict the response to files created after the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_created_at"
+ },
+ {
+ "name": "sort_by_field",
+ "alternative_names": [
+ "sort_files_by",
+ "order_files_by"
+ ],
+ "description": "Specify the field to sort the files by, such as name or size.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "order_direction",
+ "sorting_direction"
+ ],
+ "description": "Specify the order direction for sorting results. Typically 'asc' for ascending or 'desc' for descending order.",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/file-manager/folders/{folder_id}/files",
+ "tags": [
+ "fileManager"
+ ],
+ "summary": "List stored files",
+ "description": "Get a list of available images and files stored in this folder.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The file type for the File Manager file."
+ },
+ "description": "The file type for the File Manager file.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "created_by",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "description": "The unique id for the File Manager folder.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getLists",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "retrieve_mailchimp_lists",
+ "description": {
+ "tagline": "Retrieve information about all Mailchimp lists.",
+ "detailed": "Call this tool to obtain details about all the lists associated with a Mailchimp account."
+ },
+ "return_annotation": "Information about all lists in the Mailchimp account.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "selected_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_records",
+ "record_count"
+ ],
+ "description": "The number of list records to return. Accepts values between 1 and 1000, with a default of 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_skip_offset",
+ "skip_records_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "created_before_date",
+ "alternative_names": [
+ "date_created_before",
+ "prior_date_creation"
+ ],
+ "description": "Restrict response to lists created before the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "before_date_created"
+ },
+ {
+ "name": "created_after_date",
+ "alternative_names": [
+ "created_after",
+ "since_creation_date"
+ ],
+ "description": "Restrict results to lists created after this date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_date_created"
+ },
+ {
+ "name": "restrict_to_lists_before_last_campaign_sent",
+ "alternative_names": [
+ "filter_lists_pre_campaign",
+ "lists_before_last_campaign_date"
+ ],
+ "description": "Restrict results to lists created before the last campaign send date (ISO 8601 format).",
+ "endpoint_argument_name": "before_campaign_last_sent"
+ },
+ {
+ "name": "lists_after_last_campaign_date",
+ "alternative_names": [
+ "lists_post_last_campaign_date",
+ "lists_following_last_campaign"
+ ],
+ "description": "Restrict results to lists created after the last campaign send date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_campaign_last_sent"
+ },
+ {
+ "name": "filter_by_subscriber_email",
+ "alternative_names": [
+ "restrict_by_email",
+ "search_by_email"
+ ],
+ "description": "Restrict results to lists that include a specific subscriber's email address.",
+ "endpoint_argument_name": "email"
+ },
+ {
+ "name": "sort_lists_by_field",
+ "alternative_names": [
+ "order_lists_by_field",
+ "arrange_lists_by_field"
+ ],
+ "description": "Field by which to sort the list results. Choose from available list fields.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_direction",
+ "alternative_names": [
+ "order_direction",
+ "direction_of_sorting"
+ ],
+ "description": "Determines the order direction for the sorted results. Accepts 'asc' for ascending and 'desc' for descending.",
+ "endpoint_argument_name": "sort_dir"
+ },
+ {
+ "name": "restrict_to_ecommerce_store_lists",
+ "alternative_names": [
+ "filter_by_ecommerce_store",
+ "show_only_ecommerce_store_lists"
+ ],
+ "description": "Restrict results to lists containing an active, connected, undeleted ecommerce store. Expected values are 'true' or 'false'.",
+ "endpoint_argument_name": "has_ecommerce_store"
+ },
+ {
+ "name": "include_total_contacts",
+ "alternative_names": [
+ "return_total_contacts",
+ "show_total_contacts"
+ ],
+ "description": "Set to true to return the total_contacts field, which includes an approximate count of all contacts in any state.",
+ "endpoint_argument_name": "include_total_contacts"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get lists info",
+ "description": "Get information about all lists in the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_date_created",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict response to lists created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict response to lists created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_date_created",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to lists created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_campaign_last_sent",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created before the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to lists created before the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_campaign_last_sent",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created after the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to lists created after the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "email",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists that include a specific subscriber's email address."
+ },
+ "description": "Restrict results to lists that include a specific subscriber's email address.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "has_ecommerce_store",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists that contain an active, connected, undeleted ecommerce store."
+ },
+ "description": "Restrict results to lists that contain an active, connected, undeleted ecommerce store.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_total_contacts",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state."
+ },
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postLists",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_list",
+ "description": {
+ "tagline": "Create a new list in your Mailchimp account.",
+ "detailed": ""
+ },
+ "return_annotation": "Confirmation of the new list creation in Mailchimp.",
+ "arguments": [
+ {
+ "name": "list_creation_details",
+ "alternative_names": [
+ "new_list_details",
+ "mailchimp_list_config"
+ ],
+ "description": "JSON object containing details for the new list, such as name, contact info, permission reminder, and campaign defaults.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add list",
+ "description": "Create a new list in your Mailchimp account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the list."
+ },
+ "contact": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the list contact."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws."
+ },
+ "permission_reminder": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list."
+ },
+ "notify_on_subscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ },
+ "required": [
+ "company",
+ "address1",
+ "city",
+ "country"
+ ]
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "required": [
+ "from_name",
+ "from_email",
+ "subject",
+ "language"
+ ]
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "required": [
+ "name",
+ "permission_reminder",
+ "email_type_option",
+ "contact",
+ "campaign_defaults"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber List\",\n \"description\": \"Information about a specific list.\",\n \"required\": [\n \"name\",\n \"permission_reminder\",\n \"email_type_option\",\n \"contact\",\n \"campaign_defaults\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"List Name\",\n \"description\": \"The name of the list.\"\n },\n \"contact\": {\n \"type\": \"object\",\n \"title\": \"List Contact\",\n \"description\": \"[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.\",\n \"required\": [\n \"company\",\n \"address1\",\n \"city\",\n \"country\"\n ],\n \"properties\": {\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company Name\",\n \"description\": \"The company name for the list.\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City\",\n \"description\": \"The city for the list contact.\"\n },\n \"state\": {\n \"type\": \"string\",\n \"title\": \"State\",\n \"description\": \"The state for the list contact.\"\n },\n \"zip\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code for the list contact.\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"A two-character ISO3166 country code. Defaults to US if invalid.\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the list contact.\"\n }\n }\n },\n \"permission_reminder\": {\n \"type\": \"string\",\n \"title\": \"Permission Reminder\",\n \"description\": \"The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list.\"\n },\n \"use_archive_bar\": {\n \"type\": \"boolean\",\n \"title\": \"Use Archive Bar\",\n \"description\": \"Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.\",\n \"default\": false\n },\n \"campaign_defaults\": {\n \"type\": \"object\",\n \"title\": \"Campaign Defaults\",\n \"description\": \"[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.\",\n \"required\": [\n \"from_name\",\n \"from_email\",\n \"subject\",\n \"language\"\n ],\n \"properties\": {\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"Sender's Name\",\n \"description\": \"The default from name for campaigns sent to this list.\"\n },\n \"from_email\": {\n \"type\": \"string\",\n \"title\": \"Sender's Email Address\",\n \"description\": \"The default from email for campaigns sent to this list.\"\n },\n \"subject\": {\n \"type\": \"string\",\n \"title\": \"Subject\",\n \"description\": \"The default subject line for campaigns sent to this list.\"\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The default language for this lists's forms.\"\n }\n }\n },\n \"notify_on_subscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Subscribe\",\n \"description\": \"The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"notify_on_unsubscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Unsubscribe\",\n \"description\": \"The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"email_type_option\": {\n \"type\": \"boolean\",\n \"title\": \"Email Type Option\",\n \"description\": \"Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup.\"\n },\n \"double_optin\": {\n \"type\": \"boolean\",\n \"title\": \"Double Opt In\",\n \"description\": \"Whether or not to require the subscriber to confirm subscription via email.\",\n \"default\": false\n },\n \"marketing_permissions\": {\n \"type\": \"boolean\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"Whether or not the list has marketing permissions (eg. GDPR) enabled.\",\n \"default\": false\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_mailchimp_list_info",
+ "description": {
+ "tagline": "Retrieve details of a specific list in Mailchimp.",
+ "detailed": "Use this tool to get detailed information about a specific list in your Mailchimp account, including members who are unconfirmed, unsubscribed, or cleaned."
+ },
+ "return_annotation": "Information about a specific Mailchimp list and its members.",
+ "arguments": [
+ {
+ "name": "mailchimp_list_id",
+ "alternative_names": [
+ "list_unique_identifier",
+ "mailchimp_list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list to retrieve information about.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "desired_fields",
+ "include_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_in_mailchimp",
+ "alternative_names": [
+ "exclude_fields_from_mailchimp",
+ "omit_mailchimp_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects, e.g., 'stats.member_count'.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "include_total_contacts",
+ "alternative_names": [
+ "total_contacts_included",
+ "show_total_contacts"
+ ],
+ "description": "Set to true to include the approximate count of all contacts in any state (total_contacts) in the response.",
+ "endpoint_argument_name": "include_total_contacts"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get list info",
+ "description": "Get information about a specific list in your Mailchimp account. Results include list members who have signed up but haven't confirmed their subscription yet and unsubscribed or cleaned.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_total_contacts",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state."
+ },
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_mailchimp_list_settings",
+ "description": {
+ "tagline": "Update settings for a specific Mailchimp list.",
+ "detailed": "Use this tool to modify the settings of a specific list in Mailchimp. It should be called when you need to update a list's configuration or preferences."
+ },
+ "return_annotation": "Updated settings for the specified Mailchimp list.",
+ "arguments": [
+ {
+ "name": "mailchimp_list_id",
+ "alternative_names": [
+ "list_id_mailchimp",
+ "target_list_id"
+ ],
+ "description": "The unique ID of the Mailchimp list to be updated.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "list_settings_update_payload",
+ "alternative_names": [
+ "list_update_data",
+ "list_modification_payload"
+ ],
+ "description": "JSON object containing new settings for the Mailchimp list. Include properties like name, contact info, permission_reminder, use_archive_bar, campaign_defaults, notification emails, email_type_option, double_optin, and marketing_permissions.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update lists",
+ "description": "Update the settings for a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the list."
+ },
+ "contact": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the list contact."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws."
+ },
+ "permission_reminder": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list."
+ },
+ "notify_on_subscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ },
+ "required": [
+ "company",
+ "address1",
+ "city",
+ "state",
+ "zip",
+ "country"
+ ]
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "required": [
+ "from_name",
+ "from_email",
+ "subject",
+ "language"
+ ]
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "required": [
+ "name",
+ "permission_reminder",
+ "email_type_option",
+ "contact",
+ "campaign_defaults"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber List\",\n \"description\": \"Information about a specific list.\",\n \"required\": [\n \"name\",\n \"permission_reminder\",\n \"email_type_option\",\n \"contact\",\n \"campaign_defaults\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"List Name\",\n \"description\": \"The name of the list.\"\n },\n \"contact\": {\n \"type\": \"object\",\n \"title\": \"List Contact\",\n \"description\": \"[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.\",\n \"required\": [\n \"company\",\n \"address1\",\n \"city\",\n \"state\",\n \"zip\",\n \"country\"\n ],\n \"properties\": {\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company Name\",\n \"description\": \"The company name for the list.\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City\",\n \"description\": \"The city for the list contact.\"\n },\n \"state\": {\n \"type\": \"string\",\n \"title\": \"State\",\n \"description\": \"The state for the list contact.\"\n },\n \"zip\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code for the list contact.\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"A two-character ISO3166 country code. Defaults to US if invalid.\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the list contact.\"\n }\n }\n },\n \"permission_reminder\": {\n \"type\": \"string\",\n \"title\": \"Permission Reminder\",\n \"description\": \"The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list.\"\n },\n \"use_archive_bar\": {\n \"type\": \"boolean\",\n \"title\": \"Use Archive Bar\",\n \"description\": \"Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.\",\n \"default\": false\n },\n \"campaign_defaults\": {\n \"type\": \"object\",\n \"title\": \"Campaign Defaults\",\n \"description\": \"[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.\",\n \"required\": [\n \"from_name\",\n \"from_email\",\n \"subject\",\n \"language\"\n ],\n \"properties\": {\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"Sender's Name\",\n \"description\": \"The default from name for campaigns sent to this list.\"\n },\n \"from_email\": {\n \"type\": \"string\",\n \"title\": \"Sender's Email Address\",\n \"description\": \"The default from email for campaigns sent to this list.\"\n },\n \"subject\": {\n \"type\": \"string\",\n \"title\": \"Subject\",\n \"description\": \"The default subject line for campaigns sent to this list.\"\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The default language for this lists's forms.\"\n }\n }\n },\n \"notify_on_subscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Subscribe\",\n \"description\": \"The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"notify_on_unsubscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Unsubscribe\",\n \"description\": \"The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"email_type_option\": {\n \"type\": \"boolean\",\n \"title\": \"Email Type Option\",\n \"description\": \"Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup.\"\n },\n \"double_optin\": {\n \"type\": \"boolean\",\n \"title\": \"Double Opt In\",\n \"description\": \"Whether or not to require the subscriber to confirm subscription via email.\",\n \"default\": false\n },\n \"marketing_permissions\": {\n \"type\": \"boolean\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"Whether or not the list has marketing permissions (eg. GDPR) enabled.\",\n \"default\": false\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_mailchimp_list",
+ "description": {
+ "tagline": "Delete a list from your Mailchimp account.",
+ "detailed": "Use this tool to permanently delete a list from your Mailchimp account. Deleting a list removes its history, including subscriber activity and email addresses, unless previously exported and backed up."
+ },
+ "return_annotation": "Confirmation of list deletion from Mailchimp account.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to be deleted.",
+ "endpoint_argument_name": "list_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete list",
+ "description": "Delete a list from your Mailchimp account. If you delete a list, you'll lose the list history\u2014including subscriber activity, unsubscribes, complaints, and bounces. You\u2019ll also lose subscribers\u2019 email addresses, unless you exported and backed up your list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "manage_mailchimp_list_members",
+ "description": {
+ "tagline": "Batch subscribe or unsubscribe members in a Mailchimp list.",
+ "detailed": "Use this tool to add or remove multiple members from a specific Mailchimp list. Ideal for managing subscriber lists efficiently."
+ },
+ "return_annotation": "Information about the batch operation result.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique ID for the specific Mailchimp list to manage.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "batch_manage_members_data",
+ "alternative_names": [
+ "subscriber_data_batch",
+ "members_update_batch"
+ ],
+ "description": "JSON array of subscriber objects to add or update, each including email, status, merge fields, etc. Up to 500 members per request.",
+ "endpoint_argument_name": "requestBody"
+ },
+ {
+ "name": "allow_incomplete_merge_fields",
+ "alternative_names": [
+ "bypass_merge_validation",
+ "ignore_merge_field_requirements"
+ ],
+ "description": "Allows member data without required merge fields if set to true. Defaults to false.",
+ "endpoint_argument_name": "skip_merge_validation"
+ },
+ {
+ "name": "ignore_duplicate_members",
+ "alternative_names": [
+ "avoid_duplicate_entries",
+ "skip_duplicate_processing"
+ ],
+ "description": "Set to true to ignore duplicate entries in the batch request, saving the first occurrence.",
+ "endpoint_argument_name": "skip_duplicate_check"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Batch subscribe or unsubscribe",
+ "description": "Batch subscribe or unsubscribe list members.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "skip_merge_validation",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "skip_duplicate_check",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_duplicate_check is true, we will ignore duplicates sent in the request when using the batch sub/unsub on the lists endpoint. The status of the first appearance in the request will be saved. This defaults to false."
+ },
+ "description": "If skip_duplicate_check is true, we will ignore duplicates sent in the request when using the batch sub/unsub on the lists endpoint. The status of the first appearance in the request will be saved. This defaults to false.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "members": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "description": "An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call."
+ },
+ "sync_tags": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether this batch operation will replace all existing tags with tags in request."
+ },
+ "update_existing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether this batch operation will change existing members' subscription status."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Members to Subscribe/Unsubscribe to/from a List in batch",
+ "description": "Members to subscribe to or unsubscribe from a list.",
+ "properties": {
+ "members": {
+ "type": "array",
+ "title": "List Members",
+ "description": "An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call.",
+ "items": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "properties": {},
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "properties": {},
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ }
+ }
+ }
+ },
+ "sync_tags": {
+ "type": "boolean",
+ "title": "Sync Tags",
+ "description": "Whether this batch operation will replace all existing tags with tags in request."
+ },
+ "update_existing": {
+ "type": "boolean",
+ "title": "Update Existing Members",
+ "description": "Whether this batch operation will change existing members' subscription status."
+ }
+ },
+ "required": [
+ "members"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Members to Subscribe/Unsubscribe to/from a List in batch\",\n \"description\": \"Members to subscribe to or unsubscribe from a list.\",\n \"required\": [\n \"members\"\n ],\n \"properties\": {\n \"members\": {\n \"type\": \"array\",\n \"title\": \"List Members\",\n \"description\": \"An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n },\n \"sync_tags\": {\n \"type\": \"boolean\",\n \"title\": \"Sync Tags\",\n \"description\": \"Whether this batch operation will replace all existing tags with tags in request.\"\n },\n \"update_existing\": {\n \"type\": \"boolean\",\n \"title\": \"Update Existing Members\",\n \"description\": \"Whether this batch operation will change existing members' subscription status.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdAbuseReports",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_abuse_reports_for_list",
+ "description": {
+ "tagline": "Retrieve all abuse reports for a specified mailing list.",
+ "detailed": "Call this tool to get detailed information about abuse reports associated with a particular mailing list. This can be useful for monitoring and handling abuse feedback effectively."
+ },
+ "return_annotation": "Abuse reports for a specific mailing list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailing_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique ID for the mailing list to retrieve abuse reports for.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "desired_fields"
+ ],
+ "description": "Comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_result",
+ "alternative_names": [
+ "omit_fields_from_output",
+ "skip_fields_in_response"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "number_of_results"
+ ],
+ "description": "The number of records to return. Default is 10. Maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "records_offset"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/abuse-reports",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List abuse reports",
+ "description": "Get all abuse reports for a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdAbuseReportsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "fetch_abuse_report_details",
+ "description": {
+ "tagline": "Fetch details about a specific abuse report for a mailing list.",
+ "detailed": "This tool retrieves detailed information about an abuse report identified by a specific report ID associated with a mailing list via Mailchimp's marketing API. It should be called when specific details about an abuse report are needed."
+ },
+ "return_annotation": "Details about a specific abuse report.",
+ "arguments": [
+ {
+ "name": "mailing_list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "unique_list_id"
+ ],
+ "description": "The unique ID for the mailing list associated with the abuse report.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "abuse_report_id",
+ "alternative_names": [
+ "report_identifier",
+ "abuse_report_identifier"
+ ],
+ "description": "The unique identifier for the specific abuse report to fetch details for.",
+ "endpoint_argument_name": "report_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "requested_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_records",
+ "max_records_returned"
+ ],
+ "description": "Specify the number of records to return, between 1 and 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_index"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/abuse-reports/{report_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get abuse report",
+ "description": "Get details about a specific abuse report.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "report_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the abuse report."
+ },
+ "description": "The id for the abuse report.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdActivity",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_daily_list_activity",
+ "description": {
+ "tagline": "Fetch daily detailed activity stats for a list in Mailchimp.",
+ "detailed": "Retrieve up to the previous 180 days of aggregated daily activity statistics for a specific list, excluding Automation activity."
+ },
+ "return_annotation": "Aggregated daily activity statistics for a list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp list to retrieve activity stats.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_limit",
+ "max_records"
+ ],
+ "description": "The number of records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_index"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_include",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/activity",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List recent activity",
+ "description": "Get up to the previous 180 days of daily detailed aggregated activity stats for a list, not including Automation activity.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdClients",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_top_email_clients",
+ "description": {
+ "tagline": "Retrieve the top email clients from a specific list.",
+ "detailed": "This tool retrieves a list of the top email clients based on user-agent strings for a specified list ID. It should be called when there's a need to analyze or report on the most popular email clients among subscribers of a particular list."
+ },
+ "return_annotation": "A list of top email clients from a specific list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "list_id"
+ ],
+ "description": "The unique identifier for the email list to retrieve client data from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "include_fields",
+ "retrieve_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/clients",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List top email clients",
+ "description": "Get a list of the top email clients based on user-agent strings.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdGrowthHistory",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_monthly_list_growth_summary",
+ "description": {
+ "tagline": "Retrieve monthly summary of a list's growth activity.",
+ "detailed": "Use this tool to get a detailed month-by-month summary of the growth activity for a specific list in Mailchimp. It provides insights into subscriber count changes over time."
+ },
+ "return_annotation": "Monthly summary of list's growth activity.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "list_id_guid"
+ ],
+ "description": "The unique identifier for the specific list in Mailchimp. Required for retrieving growth activity.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "specified_fields"
+ ],
+ "description": "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_records",
+ "return_count"
+ ],
+ "description": "Specify the number of records to return, with a default of 10 and a maximum of 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "offset_records",
+ "skip_records"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "sort_results_by_field",
+ "alternative_names": [
+ "order_by_field",
+ "field_sorting"
+ ],
+ "description": "Specify the field by which results should be sorted. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "order_by_direction",
+ "results_sort_direction"
+ ],
+ "description": "Determines the sorting order for the results, either ascending or descending.",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/growth-history",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List growth history data",
+ "description": "Get a month-by-month summary of a specific list's growth activity.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdGrowthHistoryId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_growth_summary",
+ "description": {
+ "tagline": "Get a list's growth activity summary for a specific month and year.",
+ "detailed": "Use this tool to obtain a summary of the growth activity for a specific list in a given month and year on Mailchimp."
+ },
+ "return_annotation": "Summary of list's growth activity for a specified month and year.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "unique_list_id"
+ ],
+ "description": "The unique ID for the specific list in Mailchimp.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "specific_month_of_growth_history",
+ "alternative_names": [
+ "growth_history_month",
+ "list_growth_month"
+ ],
+ "description": "Specify the month and year (in 'YYYY-MM' format) for retrieving the list's growth history.",
+ "endpoint_argument_name": "month"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_selection",
+ "specified_fields"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "excluded_field_names",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/growth-history/{month}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get growth history by month",
+ "description": "Get a summary of a specific list's growth activity for a specific month and year.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "month",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A specific month of list growth history."
+ },
+ "description": "A specific month of list growth history.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdInterestCategories",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_interest_categories",
+ "description": {
+ "tagline": "Retrieve interest categories for a specific mailing list.",
+ "detailed": "Use this tool to obtain detailed information about the interest categories associated with a specific mailing list in Mailchimp Marketing."
+ },
+ "return_annotation": "Information about a list's interest categories.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailing_list_id"
+ ],
+ "description": "The unique identifier for the mailing list you want to retrieve interest categories for.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "selected_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects. Helps reduce the size of the response by omitting unnecessary data.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "alternative_names": [
+ "number_of_records",
+ "limit"
+ ],
+ "description": "The number of records to return. Specify a value from 10 to 1000. Defaults to 10 if not provided.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_count",
+ "results_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0. Use to manage pagination flow.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "interest_group_type",
+ "alternative_names": [
+ "interest_type_category",
+ "category_type"
+ ],
+ "description": "Specify the type of interest group to restrict results. Example: 'checkboxes', 'radio_buttons'.",
+ "endpoint_argument_name": "type"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/interest-categories",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List interest categories",
+ "description": "Get information about a list's interest categories.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results a type of interest group"
+ },
+ "description": "Restrict results a type of interest group",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdInterestCategories",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_interest_category",
+ "description": {
+ "tagline": "Create a new interest category in a Mailchimp list.",
+ "detailed": "This tool is used to create a new interest category for a specified Mailchimp list. It is useful when you want to categorize subscriber interests within a list."
+ },
+ "return_annotation": "Information about the created interest category.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique ID identifying the Mailchimp list where the interest category will be created.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "category_description",
+ "alternative_names": [
+ "interest_category_description",
+ "category_title"
+ ],
+ "description": "Text description of the interest category. Appears on signup forms, often phrased as a question.",
+ "endpoint_argument_name": "title"
+ },
+ {
+ "name": "category_display_type",
+ "alternative_names": [
+ "interest_display_type",
+ "signup_form_display_type"
+ ],
+ "description": "Determines how the interest category appears on signup forms. Options include: 'checkboxes', 'dropdown', 'radio', or 'hidden'.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "category_display_order",
+ "alternative_names": [
+ "interest_display_order",
+ "category_order"
+ ],
+ "description": "The numerical order for displaying categories. Lower numbers appear first.",
+ "endpoint_argument_name": "display_order"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/interest-categories",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add interest category",
+ "description": "Create a new interest category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "title",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "display_order",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "description": "The order that the categories are displayed in the list. Lower numbers display first.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines how this category\u2019s interests appear on signup forms."
+ },
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest Category\",\n \"description\": \"Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.\",\n \"required\": [\n \"title\",\n \"type\"\n ],\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The text description of this category. This field appears on signup forms and is often phrased as a question.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the categories are displayed in the list. Lower numbers display first.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Display Type\",\n \"description\": \"Determines how this category\\u2019s interests appear on signup forms.\",\n \"enum\": [\n \"checkboxes\",\n \"dropdown\",\n \"radio\",\n \"hidden\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdInterestCategoriesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_interest_category_info",
+ "description": {
+ "tagline": "Fetch specific interest category details from a Mailchimp list.",
+ "detailed": "Use this tool to get detailed information about a specific interest category within a Mailchimp list. This is useful for understanding subscriber interests and organizing lists more effectively."
+ },
+ "return_annotation": "Information about the specified interest category.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_value",
+ "mailchimp_list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list you want to retrieve interest category details from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_unique_id",
+ "alternative_names": [
+ "interest_cat_id",
+ "category_id"
+ ],
+ "description": "The unique ID for the interest category you want to retrieve information about.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_to_include",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_field_list"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get interest category info",
+ "description": "Get information about a specific interest category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsIdInterestCategoriesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_interest_category",
+ "description": {
+ "tagline": "Update a specific interest category in Mailchimp.",
+ "detailed": "Use this tool to update the details of a specific interest category within a Mailchimp list. Ideal for modifying category information to better organize your audience."
+ },
+ "return_annotation": "Details about the updated interest category.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_value",
+ "list_identifier"
+ ],
+ "description": "The unique identifier for the Mailchimp list to be updated.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "alternative_names": [
+ "category_id",
+ "interest_id"
+ ],
+ "description": "The unique ID for the interest category to be updated.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "interest_category_title",
+ "alternative_names": [
+ "category_description",
+ "interest_title"
+ ],
+ "description": "The text description of this interest category for signup forms, often phrased as a question.",
+ "endpoint_argument_name": "title"
+ },
+ {
+ "name": "category_display_type",
+ "alternative_names": [
+ "interest_display_type",
+ "form_display_type"
+ ],
+ "description": "Specifies how the category's interests are shown on signup forms. Options: 'checkboxes', 'dropdown', 'radio', 'hidden'.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "category_display_order",
+ "alternative_names": [
+ "interest_category_order",
+ "category_order"
+ ],
+ "description": "The numerical order for displaying the category. Lower numbers appear first.",
+ "endpoint_argument_name": "display_order"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update interest category",
+ "description": "Update a specific interest category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "title",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "display_order",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "description": "The order that the categories are displayed in the list. Lower numbers display first.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines how this category\u2019s interests appear on signup forms."
+ },
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest Category\",\n \"description\": \"Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.\",\n \"required\": [\n \"title\",\n \"type\"\n ],\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The text description of this category. This field appears on signup forms and is often phrased as a question.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the categories are displayed in the list. Lower numbers display first.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Display Type\",\n \"description\": \"Determines how this category\\u2019s interests appear on signup forms.\",\n \"enum\": [\n \"checkboxes\",\n \"dropdown\",\n \"radio\",\n \"hidden\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdInterestCategoriesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_interest_category",
+ "description": {
+ "tagline": "Delete a specific interest category from a list.",
+ "detailed": "Use this tool to delete a particular interest category from a specified list in Mailchimp. This might be called when managing email list segments and you need to remove an unwanted audience category."
+ },
+ "return_annotation": "Confirmation of the interest category deletion.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "audience_list_id",
+ "marketing_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list from which you want to delete an interest category.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "alternative_names": [
+ "category_id",
+ "audience_category_id"
+ ],
+ "description": "The unique ID of the interest category to be deleted from a list.",
+ "endpoint_argument_name": "interest_category_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete interest category",
+ "description": "Delete a specific interest category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdInterestCategoriesIdInterests",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_interest_category_interests",
+ "description": {
+ "tagline": "Retrieve interests for a specific category in Mailchimp.",
+ "detailed": "Use this tool to get a list of interests within a specific category of a Mailchimp list. It helps in understanding what options are available under a given interest category for targeted marketing strategies."
+ },
+ "return_annotation": "List of interests for a specific category in Mailchimp.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_unique_id",
+ "alternative_names": [
+ "category_interest_id",
+ "interest_category_id"
+ ],
+ "description": "The unique identifier for a specific interest category in a Mailchimp list.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "output_fields",
+ "selected_fields"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation as needed.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "excluded_fields",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_limit",
+ "maximum_records"
+ ],
+ "description": "Specify the number of records to return, between 10 and 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_skip_count",
+ "alternative_names": [
+ "pagination_offset",
+ "result_skip_count"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}/interests",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List interests in category",
+ "description": "Get a list of this category's interests.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdInterestCategoriesIdInterests",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_interest_group",
+ "description": {
+ "tagline": "Create a new interest group for a specific category.",
+ "detailed": "This tool is used to create a new interest or 'group name' within a specific interest category for a Mailchimp list. Use it when you need to organize and segment your list subscribers into specific interest groups."
+ },
+ "return_annotation": "Information about the created interest group.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailing_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to which the interest group will be added.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_unique_id",
+ "alternative_names": [
+ "category_id",
+ "interest_category_id"
+ ],
+ "description": "The unique ID for the interest category to which the new group belongs.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "interest_group_name",
+ "alternative_names": [
+ "interest_name",
+ "group_name"
+ ],
+ "description": "The name of the interest group, shown publicly on subscription forms.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "interest_display_order",
+ "alternative_names": [
+ "interest_rank",
+ "interest_position"
+ ],
+ "description": "The order in which this interest is displayed relative to others. Use an integer value.",
+ "endpoint_argument_name": "display_order"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}/interests",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add interest in category",
+ "description": "Create a new interest or 'group name' for a specific category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "description": "The name of the interest. This can be shown publicly on a subscription form.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "display_order",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The display order for interests."
+ },
+ "description": "The display order for interests.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest\",\n \"description\": \"Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Interest Name\",\n \"description\": \"The name of the interest. This can be shown publicly on a subscription form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The display order for interests.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdInterestCategoriesIdInterestsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_interest_group_names",
+ "description": {
+ "tagline": "Retrieve interest group names for a specific category.",
+ "detailed": "Use this tool to fetch interests or 'group names' associated with a specific category in a Mailchimp list. It is useful for managing or displaying group names to users."
+ },
+ "return_annotation": "Interests or 'group names' for a specific category.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp list to retrieve interest group names from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "alternative_names": [
+ "interest_cat_id",
+ "category_interest_id"
+ ],
+ "description": "The unique identifier for the interest category in a Mailchimp list.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "specific_interest_group_name",
+ "alternative_names": [
+ "interest_group_identifier",
+ "group_name_id"
+ ],
+ "description": "The specific interest or group name to retrieve in the category.",
+ "endpoint_argument_name": "interest_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "specified_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get interest in category",
+ "description": "Get interests or 'group names' for a specific category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "description": "The specific interest or 'group name'.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsIdInterestCategoriesIdInterestsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_interest_group_name",
+ "description": {
+ "tagline": "Update group names in a specific interest category.",
+ "detailed": "Use this tool to update the names of interest groups within a specified category on a Mailchimp list. This is helpful for managing and organizing subscriber interests."
+ },
+ "return_annotation": "Confirmation of interest group name update.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "list_id_value"
+ ],
+ "description": "The unique ID for the list to be updated.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "alternative_names": [
+ "interest_category_identifier",
+ "category_id"
+ ],
+ "description": "The unique ID for the interest category to be updated.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "specific_interest_id",
+ "alternative_names": [
+ "unique_group_name_id",
+ "interest_group_identifier"
+ ],
+ "description": "The unique ID for the specific interest group name within the category.",
+ "endpoint_argument_name": "interest_id"
+ },
+ {
+ "name": "interest_group_name",
+ "alternative_names": [
+ "interest_name",
+ "group_name"
+ ],
+ "description": "The new name for the interest group, displayed publicly on subscription forms.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "interest_display_order",
+ "alternative_names": [
+ "interest_sort_order",
+ "interest_order_position"
+ ],
+ "description": "The numerical order in which the interest should appear in a list.",
+ "endpoint_argument_name": "display_order"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update interest in category",
+ "description": "Update interests or 'group names' for a specific category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "description": "The specific interest or 'group name'.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "description": "The name of the interest. This can be shown publicly on a subscription form.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "display_order",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The display order for interests."
+ },
+ "description": "The display order for interests.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest\",\n \"description\": \"Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Interest Name\",\n \"description\": \"The name of the interest. This can be shown publicly on a subscription form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The display order for interests.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdInterestCategoriesIdInterestsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_interest_from_category",
+ "description": {
+ "tagline": "Delete an interest from a specific category.",
+ "detailed": "Use this tool to delete interests or group names within a specified category in Mailchimp. This is useful for managing interests in a mailing list."
+ },
+ "return_annotation": "Confirmation of interest deletion.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_value",
+ "list_identifier"
+ ],
+ "description": "The unique ID for the list to be targeted for deleting an interest.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "alternative_names": [
+ "category_id",
+ "interest_group_id"
+ ],
+ "description": "The unique ID for the interest category to delete the interest from. This ID is essential to specify the correct category in Mailchimp.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "interest_identifier",
+ "alternative_names": [
+ "specific_interest_id",
+ "group_name_identifier"
+ ],
+ "description": "The unique identifier for the specific interest or group name to be deleted.",
+ "endpoint_argument_name": "interest_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete interest in category",
+ "description": "Delete interests or group names in a specific category.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "description": "The specific interest or 'group name'.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "previewASegment",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_segments_info",
+ "description": {
+ "tagline": "Retrieve details of all segments for a specific list.",
+ "detailed": "Use this tool to get information about all available segments for a specific list in Mailchimp. It helps in understanding the segmentation structure of a mailing list."
+ },
+ "return_annotation": "Information about available segments for a list.",
+ "arguments": [
+ {
+ "name": "list_identifier",
+ "alternative_names": [
+ "mail_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique identifier for the mailing list whose segments are to be retrieved.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_count",
+ "alternative_names": [
+ "result_limit",
+ "number_of_records"
+ ],
+ "description": "The number of records to return. Default: 10. Max: 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "records_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "segment_type",
+ "alternative_names": [
+ "segment_category",
+ "segment_kind"
+ ],
+ "description": "Specify the type of segment to filter results. Use known segment types as strings.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "created_after_datetime",
+ "alternative_names": [
+ "created_since_timestamp",
+ "after_creation_date"
+ ],
+ "description": "Restrict results to segments created after the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_created_at"
+ },
+ {
+ "name": "restrict_to_segments_created_before",
+ "alternative_names": [
+ "segments_created_before_time",
+ "filter_by_creation_time_before"
+ ],
+ "description": "Restrict results to segments created before the specified time. Use ISO 8601 format: 2015-10-21T15:41:36+00:00.",
+ "endpoint_argument_name": "before_created_at"
+ },
+ {
+ "name": "include_cleaned_members",
+ "alternative_names": [
+ "include_removed_members",
+ "include_bounced_members"
+ ],
+ "description": "Set to 'true' to include cleaned (bounced) members in the response. Use this to see members who have been removed due to email issues.",
+ "endpoint_argument_name": "include_cleaned"
+ },
+ {
+ "name": "include_transactional_members",
+ "alternative_names": [
+ "add_transactional_members",
+ "transactional_members_inclusion"
+ ],
+ "description": "Specify whether to include transactional members in the response. Use 'true' or 'false'.",
+ "endpoint_argument_name": "include_transactional"
+ },
+ {
+ "name": "include_unsubscribed_members",
+ "alternative_names": [
+ "include_opted_out_members",
+ "include_unsubscribe_flag"
+ ],
+ "description": "Set to 'true' to include unsubscribed members in the response.",
+ "endpoint_argument_name": "include_unsubscribed"
+ },
+ {
+ "name": "restrict_since_updated_time",
+ "alternative_names": [
+ "limit_results_since_update",
+ "filter_after_update_time"
+ ],
+ "description": "Restrict results to segments updated after this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_updated_at"
+ },
+ {
+ "name": "restrict_to_segments_updated_before",
+ "alternative_names": [
+ "filter_segments_by_update_before",
+ "limit_updated_segments_before"
+ ],
+ "description": "Restrict results to segments updated before the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "before_updated_at"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/segments",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List segments",
+ "description": "Get information about all available segments for a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on segment type."
+ },
+ "description": "Limit results based on segment type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to segments created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_created_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to segments created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_cleaned",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "description": "Include cleaned members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_transactional",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "description": "Include transactional members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_unsubscribed",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "description": "Include unsubscribed members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_updated_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments update after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to segments update after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_updated_at",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments update before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to segments update before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdSegments",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_segment",
+ "description": {
+ "tagline": "Create a new segment in a specific Mailchimp list.",
+ "detailed": "This tool is used to create a new segment within a specified Mailchimp list. It should be called when you need to categorize or target specific subsets of your mailing list for marketing purposes."
+ },
+ "return_annotation": "Information about the created segment in the list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailing_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp list where the new segment will be created.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_name",
+ "alternative_names": [
+ "list_segment_name",
+ "new_segment_name"
+ ],
+ "description": "The name of the segment to be created in Mailchimp.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "emails_for_static_segment",
+ "alternative_names": [
+ "static_segment_emails",
+ "email_array_for_segment"
+ ],
+ "description": "An array of emails for creating a static segment. An empty array means no subscribers. Cannot be used with 'options'.",
+ "endpoint_argument_name": "static_segment"
+ },
+ {
+ "name": "segment_match_type",
+ "alternative_names": [
+ "segment_options_match",
+ "list_segment_match_type"
+ ],
+ "description": "Specifies the match type for the segment conditions. Use 'any' to match any condition and 'all' to match all conditions.",
+ "endpoint_argument_name": "options.match"
+ },
+ {
+ "name": "segment_match_conditions",
+ "alternative_names": [
+ "segment_conditions",
+ "conditions_for_matching"
+ ],
+ "description": "Array of conditions to define how the segment matches subscribers. Refer to the Mailchimp documentation for various condition types.",
+ "endpoint_argument_name": "options.conditions"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/segments",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add segment",
+ "description": "Create a new segment in a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the segment."
+ },
+ "description": "The name of the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "static_segment",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field."
+ },
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Static Segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "schema_required": false
+ },
+ {
+ "name": "options.match",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Match type."
+ },
+ "description": "Match type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "schema_required": false
+ },
+ {
+ "name": "options.conditions",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ },
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "type": "object",
+ "properties": {}
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"Information about a specific list segment.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Segment Name\",\n \"description\": \"The name of the segment.\"\n },\n \"static_segment\": {\n \"type\": \"array\",\n \"title\": \"Static Segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Conditions\",\n \"description\": \"The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.\",\n \"properties\": {\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match\",\n \"description\": \"Match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdSegmentsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_segment_info",
+ "description": {
+ "tagline": "Retrieve information about a specific Mailchimp segment.",
+ "detailed": "Use this tool to get detailed information about a specific segment in a Mailchimp list by providing the list and segment IDs."
+ },
+ "return_annotation": "Segment information details.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list to fetch segment information from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_id",
+ "alternative_names": [
+ "seg_id",
+ "segment_identifier"
+ ],
+ "description": "Provide the unique ID for the segment you want information on.",
+ "endpoint_argument_name": "segment_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "include_cleaned_members",
+ "alternative_names": [
+ "include_cleaned_status",
+ "add_cleaned_members"
+ ],
+ "description": "Set to 'true' to include cleaned members in the response. Cleaned members are those deleted due to bounce or other delivery issues.",
+ "endpoint_argument_name": "include_cleaned"
+ },
+ {
+ "name": "include_transactional_members",
+ "alternative_names": [
+ "add_transactional_members",
+ "with_transactional_members"
+ ],
+ "description": "Set to 'true' to include transactional members in the response.",
+ "endpoint_argument_name": "include_transactional"
+ },
+ {
+ "name": "include_unsubscribed_members",
+ "alternative_names": [
+ "with_unsubscribed_members",
+ "show_unsubscribed_members"
+ ],
+ "description": "Set to 'true' to include unsubscribed members in the response.",
+ "endpoint_argument_name": "include_unsubscribed"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/segments/{segment_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get segment info",
+ "description": "Get information about a specific segment.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_cleaned",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "description": "Include cleaned members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_transactional",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "description": "Include transactional members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_unsubscribed",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "description": "Include unsubscribed members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "segment_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "description": "The unique id for the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdSegmentsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_specific_segment",
+ "description": {
+ "tagline": "Delete a specific segment from a Mailchimp list.",
+ "detailed": "Use this tool to delete a specific segment within a Mailchimp list by providing the list and segment IDs. This is useful for managing and organizing your email marketing lists."
+ },
+ "return_annotation": "Confirmation of segment deletion.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list to target for segment deletion.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "alternative_names": [
+ "segment_id_value",
+ "unique_segment_identifier"
+ ],
+ "description": "The unique identifier for the segment to be deleted. It must match the segment ID in Mailchimp.",
+ "endpoint_argument_name": "segment_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/segments/{segment_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete segment",
+ "description": "Delete a specific segment in a list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "segment_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "description": "The unique id for the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsIdSegmentsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_mailchimp_segment",
+ "description": {
+ "tagline": "Update the details of a specific segment in a Mailchimp list.",
+ "detailed": "This tool updates a specific segment within a designated list in Mailchimp. It should be called when there is a need to modify segment criteria or details in an existing list."
+ },
+ "return_annotation": "Confirmation of the segment update.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique ID for the list to update the segment in. This ID is required to identify the list containing the target segment.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "alternative_names": [
+ "segment_identifier",
+ "segment_id_value"
+ ],
+ "description": "The unique ID for the segment to update.",
+ "endpoint_argument_name": "segment_id"
+ },
+ {
+ "name": "segment_name",
+ "alternative_names": [
+ "segment_label",
+ "segment_title"
+ ],
+ "description": "The new name for the segment to be updated.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "static_email_list",
+ "alternative_names": [
+ "static_emails",
+ "email_segment_list"
+ ],
+ "description": "An array of emails for the static segment. Emails not on the list are ignored. An empty array resets the segment, removing all members. Cannot be used with 'options'.",
+ "endpoint_argument_name": "static_segment"
+ },
+ {
+ "name": "segment_match_type",
+ "alternative_names": [
+ "segment_condition_match",
+ "condition_match_type"
+ ],
+ "description": "Determines if any or all conditions must be met for the segment. Allowed values: 'any', 'all'.",
+ "endpoint_argument_name": "options.match"
+ },
+ {
+ "name": "segment_conditions",
+ "alternative_names": [
+ "conditions_array",
+ "list_segment_conditions"
+ ],
+ "description": "An array of conditions that define the segment criteria. Each condition should be a JSON object specifying the targeting parameters.",
+ "endpoint_argument_name": "options.conditions"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}/segments/{segment_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update segment",
+ "description": "Update a specific segment in a list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "segment_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "description": "The unique id for the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the segment."
+ },
+ "description": "The name of the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "static_segment",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field."
+ },
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Static Segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "schema_required": false
+ },
+ {
+ "name": "options.match",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Match type."
+ },
+ "description": "Match type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "schema_required": false
+ },
+ {
+ "name": "options.conditions",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of segment conditions."
+ },
+ "description": "An array of segment conditions.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Segment Conditions",
+ "description": "An array of segment conditions.",
+ "items": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "type": "object",
+ "properties": {}
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"Information about a specific list segment.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Segment Name\",\n \"description\": \"The name of the segment.\"\n },\n \"static_segment\": {\n \"type\": \"array\",\n \"title\": \"Static Segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Conditions\",\n \"description\": \"The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.\",\n \"properties\": {\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match\",\n \"description\": \"Match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Conditions\",\n \"description\": \"An array of segment conditions.\",\n \"items\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdSegmentsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_list_segment",
+ "description": {
+ "tagline": "Batch update members in a Mailchimp list segment.",
+ "detailed": "Use this tool to batch add or remove members in a specified static segment of a Mailchimp list. This is useful for efficiently managing segment membership within a list."
+ },
+ "return_annotation": "Confirmation of list segment update.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique identifier for the Mailchimp list.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "alternative_names": [
+ "segment_identifier",
+ "segment_id_value"
+ ],
+ "description": "The unique ID of the segment in the Mailchimp list for member updates.",
+ "endpoint_argument_name": "segment_id"
+ },
+ {
+ "name": "emails_to_add_to_segment",
+ "alternative_names": [
+ "emails_for_segment_addition",
+ "add_emails_to_static_segment"
+ ],
+ "description": "An array of email addresses to add to the specified static segment. Only existing list emails will be added. Limit of 500.",
+ "endpoint_argument_name": "members_to_add"
+ },
+ {
+ "name": "emails_to_remove_from_segment",
+ "alternative_names": [
+ "remove_emails_from_segment",
+ "delete_segment_members"
+ ],
+ "description": "An array of up to 500 emails to remove from the static segment. Emails not in the list will be ignored.",
+ "endpoint_argument_name": "members_to_remove"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/segments/{segment_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Batch add or remove members",
+ "description": "Batch add/remove list members to static segment",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "segment_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "description": "The unique id for the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "members_to_add",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent."
+ },
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Members to add to the static segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "schema_required": false
+ },
+ {
+ "name": "members_to_remove",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent."
+ },
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Members to remove from the static segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Members to add/remove to/from a static segment\",\n \"description\": \"Members to add/remove to/from a static segment\",\n \"properties\": {\n \"members_to_add\": {\n \"type\": \"array\",\n \"title\": \"Members to add to the static segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"members_to_remove\": {\n \"type\": \"array\",\n \"title\": \"Members to remove from the static segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdSegmentsIdMembers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_segment_members_info",
+ "description": {
+ "tagline": "Get information about members in a saved segment.",
+ "detailed": "Use this tool to retrieve information about members within a specified segment. It is useful when you need details on who is part of a particular saved segment in a mailing list."
+ },
+ "return_annotation": "Information about members in a specific segment.",
+ "arguments": [
+ {
+ "name": "list_identifier",
+ "alternative_names": [
+ "mail_list_id",
+ "list_unique_id"
+ ],
+ "description": "The unique ID representing the mailing list from which the segment members will be retrieved. This ID is required to specify the context of the segment.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "alternative_names": [
+ "segment_identifier",
+ "unique_segment_id"
+ ],
+ "description": "The unique ID for the segment to retrieve members from.",
+ "endpoint_argument_name": "segment_id"
+ },
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "result_fields",
+ "returned_fields"
+ ],
+ "description": "Comma-separated list of specific fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "excluded_fields",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_records",
+ "return_count"
+ ],
+ "description": "The number of records to return. Default is 10; maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_count",
+ "start_index_for_results"
+ ],
+ "description": "The number of records to skip for pagination purposes. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "include_cleaned_members",
+ "alternative_names": [
+ "include_purged_members",
+ "include_removed_members"
+ ],
+ "description": "Specify 'true' to include cleaned (invalid or bounced) members in the response. Otherwise, specify 'false'.",
+ "endpoint_argument_name": "include_cleaned"
+ },
+ {
+ "name": "include_transactional_members",
+ "alternative_names": [
+ "include_transactional_flag",
+ "include_transactional_in_response"
+ ],
+ "description": "Set to true to include transactional members in the response.",
+ "endpoint_argument_name": "include_transactional"
+ },
+ {
+ "name": "include_unsubscribed_members",
+ "alternative_names": [
+ "add_unsubscribed_to_response",
+ "show_unsubscribed_members"
+ ],
+ "description": "Specify 'true' to include unsubscribed members in the response, 'false' to exclude them.",
+ "endpoint_argument_name": "include_unsubscribed"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/segments/{segment_id}/members",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List members in segment",
+ "description": "Get information about members in a saved segment.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_cleaned",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "description": "Include cleaned members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_transactional",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "description": "Include transactional members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "include_unsubscribed",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "description": "Include unsubscribed members in response",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "segment_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "description": "The unique id for the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdSegmentsIdMembers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_member_to_static_segment",
+ "description": {
+ "tagline": "Add a member to a Mailchimp static segment.",
+ "detailed": "Use this tool to add a new member to a specific static segment within a Mailchimp list. This is helpful for updating subscriber lists with targeted segments."
+ },
+ "return_annotation": "Confirmation of member addition to the segment.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to which the segment belongs.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_id",
+ "alternative_names": [
+ "segment_identifier",
+ "static_segment_id"
+ ],
+ "description": "The unique ID for the segment to which the member will be added.",
+ "endpoint_argument_name": "segment_id"
+ },
+ {
+ "name": "subscriber_email_address",
+ "alternative_names": [
+ "email_for_subscription",
+ "subscriber_email"
+ ],
+ "description": "The email address of the subscriber to be added to the static segment.",
+ "endpoint_argument_name": "email_address"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/segments/{segment_id}/members",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add member to segment",
+ "description": "Add a member to a static segment.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "segment_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "description": "The unique id for the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "email_address",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "description": "Email address for a subscriber.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdSegmentsIdMembersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "remove_member_from_mailchimp_segment",
+ "description": {
+ "tagline": "Remove a member from a Mailchimp static segment.",
+ "detailed": "Use this tool to delete a member from a specific static segment in Mailchimp. It should be called when you need to manage segment memberships by removing a subscriber."
+ },
+ "return_annotation": "Confirmation of member removal from segment.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_for_removal",
+ "target_list_id"
+ ],
+ "description": "The unique ID of the mailing list from which the member will be removed.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "alternative_names": [
+ "segment_identifier",
+ "segment_id_code"
+ ],
+ "description": "The unique identifier for the Mailchimp segment from which the member will be removed.",
+ "endpoint_argument_name": "segment_id"
+ },
+ {
+ "name": "email_md5_hash",
+ "alternative_names": [
+ "hashed_email",
+ "subscriber_email_hash"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "endpoint_argument_name": "subscriber_hash"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/segments/{segment_id}/members/{subscriber_hash}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Remove list member from segment",
+ "description": "Remove a member from the specified static segment.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "segment_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "description": "The unique id for the segment.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "searchTagsByName",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "search_tags_by_name",
+ "description": {
+ "tagline": "Search for tags on a list by name.",
+ "detailed": "Use this tool to find specific tags by name within a Mailchimp list. If no name is provided, it will return all tags on the list."
+ },
+ "return_annotation": "Tags matching the search criteria on the list.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "unique_list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique identifier for a Mailchimp list. This is essential for specifying which list to search for tags.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "tag_name_search_query",
+ "alternative_names": [
+ "tag_search_prefix",
+ "filter_tags_by_name"
+ ],
+ "description": "The prefix to filter tags by name. Returns tags where names start with this query.",
+ "endpoint_argument_name": "name"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/tag-search",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Search for tags on a list by name.",
+ "description": "Search for tags on a list by name. If no name is provided, will return all tags on the list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter tags. The search query will be compared to each tag as a prefix, so all tags that have a name starting with this field will be returned."
+ },
+ "description": "The search query used to filter tags. The search query will be compared to each tag as a prefix, so all tags that have a name starting with this field will be returned.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_mailchimp_list_members",
+ "description": {
+ "tagline": "Retrieve member details from a specific Mailchimp list.",
+ "detailed": "Use this tool to get information about members within a specified Mailchimp list. It's useful for accessing subscriber details such as email addresses and subscription status."
+ },
+ "return_annotation": "Information about members in a Mailchimp list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "unique_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to retrieve member information from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "returned_fields",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "exclude_member_fields",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "return_count"
+ ],
+ "description": "Specify the number of records to return, between 10 and 1000, default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "starting_position"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "email_type",
+ "alternative_names": [
+ "email_format_type",
+ "type_of_email"
+ ],
+ "description": "Specify the type of email format. Typically 'html' or 'text'.",
+ "endpoint_argument_name": "email_type"
+ },
+ {
+ "name": "subscriber_status",
+ "alternative_names": [
+ "member_status",
+ "subscription_status"
+ ],
+ "description": "The status of the subscriber (e.g., subscribed, unsubscribed, cleaned, pending).",
+ "endpoint_argument_name": "status"
+ },
+ {
+ "name": "opt_in_after_timestamp",
+ "alternative_names": [
+ "subscribed_after_timestamp",
+ "opted_in_after"
+ ],
+ "description": "Restrict results to subscribers who opted-in after the specified timeframe in ISO 8601 format: 2015-10-21T15:41:36+00:00.",
+ "endpoint_argument_name": "since_timestamp_opt"
+ },
+ {
+ "name": "opt_in_before_timestamp",
+ "alternative_names": [
+ "before_opt_in_timestamp",
+ "timestamp_before_opt_in"
+ ],
+ "description": "Restrict results to subscribers who opted in before the specified timeframe. Use ISO 8601 format.",
+ "endpoint_argument_name": "before_timestamp_opt"
+ },
+ {
+ "name": "changed_after_timestamp",
+ "alternative_names": [
+ "changed_since_timestamp",
+ "since_information_changed"
+ ],
+ "description": "Restrict results to subscribers whose information changed after the specified timestamp in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_last_changed"
+ },
+ {
+ "name": "restrict_change_before_timeframe",
+ "alternative_names": [
+ "filter_change_before_time",
+ "limit_change_before_time"
+ ],
+ "description": "Restrict results to subscribers whose information changed before the provided timeframe in ISO 8601 format (e.g., '2015-10-21T15:41:36+00:00').",
+ "endpoint_argument_name": "before_last_changed"
+ },
+ {
+ "name": "unique_email_identifier",
+ "alternative_names": [
+ "email_unique_id",
+ "email_identifier"
+ ],
+ "description": "A unique identifier for the email address across all Mailchimp lists. Use this to filter for a specific member.",
+ "endpoint_argument_name": "unique_email_id"
+ },
+ {
+ "name": "filter_vip_members",
+ "alternative_names": [
+ "vip_filter",
+ "vip_only_filter"
+ ],
+ "description": "Filter to return only VIP list members. Use `true` for VIPs only, `false` for all members.",
+ "endpoint_argument_name": "vip_only"
+ },
+ {
+ "name": "interest_category_id",
+ "alternative_names": [
+ "interest_group_id",
+ "category_identifier"
+ ],
+ "description": "The unique id for the interest category used to filter Mailchimp list members.",
+ "endpoint_argument_name": "interest_category_id"
+ },
+ {
+ "name": "filter_by_interest_ids",
+ "alternative_names": [
+ "interest_ids_filter",
+ "membership_interest_ids"
+ ],
+ "description": "Comma-separated list of interest IDs to filter list members. Must be combined with interest_category_id and interest_match.",
+ "endpoint_argument_name": "interest_ids"
+ },
+ {
+ "name": "interest_match_filter",
+ "alternative_names": [
+ "member_interest_filter",
+ "subscriber_interest_filter"
+ ],
+ "description": "Specify how to match list members by interests. Options: 'any', 'all', or 'none'. Must accompany interest_category_id and interest_ids.",
+ "endpoint_argument_name": "interest_match"
+ },
+ {
+ "name": "sort_field_for_members",
+ "alternative_names": [
+ "member_sort_field",
+ "list_member_sort_field"
+ ],
+ "description": "Specifies the field by which to sort the list members.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "sorting_direction",
+ "order_direction"
+ ],
+ "description": "Determines the order direction for sorted results. Common values are 'asc' for ascending and 'desc' for descending.",
+ "endpoint_argument_name": "sort_dir"
+ },
+ {
+ "name": "filter_by_since_last_campaign",
+ "alternative_names": [
+ "since_last_campaign_filter",
+ "campaign_filter_since_last"
+ ],
+ "description": "Filter subscribers by their status (subscribed/unsubscribed/pending/cleaned) since the last email campaign. Requires member status.",
+ "endpoint_argument_name": "since_last_campaign"
+ },
+ {
+ "name": "filter_unsubscribed_since",
+ "alternative_names": [
+ "unsubscribe_date_filter",
+ "unsubscribed_date_filter"
+ ],
+ "description": "Filter subscribers who unsubscribed since a specific date. Must use 'unsubscribed' status only.",
+ "endpoint_argument_name": "unsubscribed_since"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List members info",
+ "description": "Get information about members in a specific Mailchimp list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "email_type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email type."
+ },
+ "description": "The email type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "status",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscriber's status."
+ },
+ "description": "The subscriber's status.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_timestamp_opt",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers who opted-in after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to subscribers who opted-in after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_timestamp_opt",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers who opted-in before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to subscribers who opted-in before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_last_changed",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers whose information changed after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to subscribers whose information changed after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_last_changed",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers whose information changed before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to subscribers whose information changed before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "unique_email_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the email address across all Mailchimp lists."
+ },
+ "description": "A unique identifier for the email address across all Mailchimp lists.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "vip_only",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A filter to return only the list's VIP members. Passing `true` will restrict results to VIP list members, passing `false` will return all list members."
+ },
+ "description": "A filter to return only the list's VIP members. Passing `true` will restrict results to VIP list members, passing `false` will return all list members.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_category_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the interest category."
+ },
+ "description": "The unique id for the interest category.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_ids",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_match. The value must be a comma separated list of interest ids present for any supplied interest categories."
+ },
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_match. The value must be a comma separated list of interest ids present for any supplied interest categories.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "interest_match",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_ids. \"any\" will match a member with any of the interest supplied, \"all\" will only match members with every interest supplied, and \"none\" will match members without any of the interest supplied."
+ },
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_ids. \"any\" will match a member with any of the interest supplied, \"all\" will only match members with every interest supplied, and \"none\" will match members without any of the interest supplied.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_last_campaign",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter subscribers by those subscribed/unsubscribed/pending/cleaned since last email campaign send. Member status is required to use this filter."
+ },
+ "description": "Filter subscribers by those subscribed/unsubscribed/pending/cleaned since last email campaign send. Member status is required to use this filter.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "unsubscribed_since",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter subscribers by those unsubscribed since a specific date. Using any status other than unsubscribed with this filter will result in an error."
+ },
+ "description": "Filter subscribers by those unsubscribed since a specific date. Using any status other than unsubscribed with this filter will result in an error.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdMembers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_member_to_mailchimp_list",
+ "description": {
+ "tagline": "Add a new member to a Mailchimp list.",
+ "detailed": "Use this tool to add a new subscriber to a specific Mailchimp list. It should be called when you need to manage mailing lists by adding new contacts."
+ },
+ "return_annotation": "Confirmation of the new member added to the list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to which a new member will be added. This ID can be found in the Mailchimp account settings.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "new_member_data",
+ "alternative_names": [
+ "member_details",
+ "subscriber_info"
+ ],
+ "description": "Details of the new member to be added, including email, status, and optional fields like merge fields, location, etc.",
+ "endpoint_argument_name": "requestBody"
+ },
+ {
+ "name": "bypass_merge_field_validation",
+ "alternative_names": [
+ "ignore_required_merge_fields",
+ "skip_required_merge_fields"
+ ],
+ "description": "Set to true to accept member data without required merge fields. Defaults to false.",
+ "endpoint_argument_name": "skip_merge_validation"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/members",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add member to list",
+ "description": "Add a new member to the list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "skip_merge_validation",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tags that are associated with a member."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "properties": {},
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "properties": {},
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags on a member",
+ "description": "The tags that are associated with a member.",
+ "items": {
+ "type": "string",
+ "description": "The name of the tag that will be associated with this member."
+ }
+ }
+ },
+ "required": [
+ "email_address",
+ "status"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"required\": [\n \"email_address\",\n \"status\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"marketing_permissions\": {\n \"type\": \"array\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"The marketing permissions for the subscriber.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Marketing Permission\",\n \"description\": \"A single marketing permission a subscriber has either opted-in to or opted-out of.\",\n \"properties\": {\n \"marketing_permission_id\": {\n \"type\": \"string\",\n \"title\": \"Marketing Permission ID\",\n \"description\": \"The id for the marketing permission on the list\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"If the subscriber has opted-in to the marketing permission.\"\n }\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags on a member\",\n \"description\": \"The tags that are associated with a member.\",\n \"items\": {\n \"type\": \"string\",\n \"description\": \"The name of the tag that will be associated with this member.\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_member_info",
+ "description": {
+ "tagline": "Retrieve details about a specific list member in Mailchimp.",
+ "detailed": "Get information about a specific list member, including their subscription status and other details. Useful for tracking and managing member information in Mailchimp mailing lists."
+ },
+ "return_annotation": "Information about a specific list member.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "mail_list_id",
+ "email_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to retrieve the member from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "list_member_key",
+ "email_or_contact_id"
+ ],
+ "description": "The MD5 hash of the lowercase list member's email, or the email address/contact_id itself.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_specification",
+ "desired_fields"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_member_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get member info",
+ "description": "Get information about a specific list member, including a currently subscribed, unsubscribed, or bounced member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "putListsIdMembersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_or_update_list_member",
+ "description": {
+ "tagline": "Add or update a member in a Mailchimp list.",
+ "detailed": "Use this tool to add a new member to a specific Mailchimp list or update the information of an existing member. This is useful for managing list subscriptions effectively."
+ },
+ "return_annotation": "Confirmation of member addition or update.",
+ "arguments": [
+ {
+ "name": "unique_list_id",
+ "alternative_names": [
+ "mailing_list_id",
+ "target_list_id"
+ ],
+ "description": "The unique ID identifying the Mailchimp list where members are added or updated.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "subscriber_identifier",
+ "alternative_names": [
+ "member_identifier",
+ "email_or_id_hash"
+ ],
+ "description": "MD5 hash of the lowercase version of the member's email address, email address, or contact ID.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "subscriber_data",
+ "alternative_names": [
+ "member_profile",
+ "list_member_info"
+ ],
+ "description": "JSON object with subscriber details including email, status, merge fields, interests, and more.",
+ "endpoint_argument_name": "requestBody"
+ },
+ {
+ "name": "bypass_merge_field_check",
+ "alternative_names": [
+ "ignore_merge_field_validation",
+ "skip_required_merge_fields"
+ ],
+ "description": "Set to true to allow member data without required merge fields. Defaults to false.",
+ "endpoint_argument_name": "skip_merge_validation"
+ }
+ ]
+ },
+ "method": "PUT",
+ "path": "/lists/{list_id}/members/{subscriber_hash}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add or update list member",
+ "description": "Add or update a list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "skip_merge_validation",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber. This value is required only if the email address is not already present on the list."
+ },
+ "status_if_new": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's status. This value is required only if the email address is not already present on the list."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber. This value is required only if the email address is not already present on the list."
+ },
+ "status_if_new": {
+ "type": "string",
+ "title": "New Member Status",
+ "description": "Subscriber's status. This value is required only if the email address is not already present on the list.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "properties": {},
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "properties": {},
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ }
+ },
+ "required": [
+ "email_address",
+ "status_if_new"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"required\": [\n \"email_address\",\n \"status_if_new\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber. This value is required only if the email address is not already present on the list.\"\n },\n \"status_if_new\": {\n \"type\": \"string\",\n \"title\": \"New Member Status\",\n \"description\": \"Subscriber's status. This value is required only if the email address is not already present on the list.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"marketing_permissions\": {\n \"type\": \"array\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"The marketing permissions for the subscriber.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Marketing Permission\",\n \"description\": \"A single marketing permission a subscriber has either opted-in to or opted-out of.\",\n \"properties\": {\n \"marketing_permission_id\": {\n \"type\": \"string\",\n \"title\": \"Marketing Permission ID\",\n \"description\": \"The id for the marketing permission on the list\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"If the subscriber has opted-in to the marketing permission.\"\n }\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsIdMembersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_list_member_info",
+ "description": {
+ "tagline": "Update information for a specific list member in Mailchimp.",
+ "detailed": "Use this tool to update the details of a particular member on a Mailchimp list. It should be called when you need to modify any member's information, such as their email address or other personal details, within a given list."
+ },
+ "return_annotation": "Confirmation of list member information update.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_value",
+ "unique_list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list. This ID identifies which list to update the member information in.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "member_id",
+ "subscriber_identifier"
+ ],
+ "description": "The MD5 hash of the lowercase list member's email, email address, or contact_id.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "member_information_data",
+ "alternative_names": [
+ "subscriber_update_payload",
+ "list_member_data"
+ ],
+ "description": "JSON object containing the member's information to update, including email, status, merge fields, etc.",
+ "endpoint_argument_name": "requestBody"
+ },
+ {
+ "name": "skip_merge_validation",
+ "alternative_names": [
+ "bypass_merge_field_check",
+ "ignore_required_merge"
+ ],
+ "description": "Set to true to allow member data without merge field values, even if usually required. Defaults to false.",
+ "endpoint_argument_name": "skip_merge_validation"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}/members/{subscriber_hash}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update list member",
+ "description": "Update information for a specific list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "skip_merge_validation",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "properties": {},
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "properties": {},
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"marketing_permissions\": {\n \"type\": \"array\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"The marketing permissions for the subscriber.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Marketing Permission\",\n \"description\": \"A single marketing permission a subscriber has either opted-in to or opted-out of.\",\n \"properties\": {\n \"marketing_permission_id\": {\n \"type\": \"string\",\n \"title\": \"Marketing Permission ID\",\n \"description\": \"The id for the marketing permission on the list\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"If the subscriber has opted-in to the marketing permission.\"\n }\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdMembersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "archive_list_member",
+ "description": {
+ "tagline": "Archives a member from a Mailchimp list.",
+ "detailed": "Use this tool to archive a member from a specific Mailchimp list when they should no longer receive communications. Note that this is not a permanent deletion."
+ },
+ "return_annotation": "Confirms archival of a list member.",
+ "arguments": [
+ {
+ "name": "mailing_list_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "audience_id"
+ ],
+ "description": "The unique identifier for the specific Mailchimp list to archive a member from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "member_id",
+ "subscriber_identifier"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address, or use the email address/contact_id directly.",
+ "endpoint_argument_name": "subscriber_hash"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/members/{subscriber_hash}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Archive list member",
+ "description": "Archive a list member. To permanently delete, use the delete-permanent action.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembersIdActivity",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_member_activity",
+ "description": {
+ "tagline": "Retrieve recent email activity for a list member.",
+ "detailed": "Call this tool to get the last 50 activity events for a specific member on a Mailchimp list, including actions like opens, clicks, and unsubscribes."
+ },
+ "return_annotation": "The recent activity events of a member on a specific list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailing_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list you want to query.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "member_id",
+ "email_or_hash"
+ ],
+ "description": "MD5 hash of the lowercase email, email address, or contact ID of the list member.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "fields_to_include",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of specific fields to retrieve for member activity, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_activity",
+ "alternative_names": [
+ "omit_activity_fields",
+ "exclude_event_attributes"
+ ],
+ "description": "A comma-separated list of fields to exclude from the member activity response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "actions_to_return",
+ "alternative_names": [
+ "actions_filter",
+ "specific_actions"
+ ],
+ "description": "Comma-separated list of specific member actions to retrieve, such as opens, clicks, and unsubscribes.",
+ "endpoint_argument_name": "action"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/activity",
+ "tags": [
+ "lists"
+ ],
+ "summary": "View recent activity 50",
+ "description": "Get the last 50 events of a member's activity on a specific list, including opens, clicks, and unsubscribes.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "action",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma seperated list of actions to return."
+ },
+ "description": "A comma seperated list of actions to return.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembersIdActivityFeed",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_member_activity_feed",
+ "description": {
+ "tagline": "Fetch a Mailchimp list member's activity details.",
+ "detailed": "Use this tool to get a detailed record of a member's activities on a specific Mailchimp list, including email opens, link clicks, and unsubscribe actions."
+ },
+ "return_annotation": "A member's activity data on a specific list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list. Required to retrieve the member's activity data.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "subscriber_identifier",
+ "list_member_id"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address, or the email address itself, or contact_id.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "desired_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response, use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "results_limit"
+ ],
+ "description": "The number of activity records to return. Default is 10, max is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_count",
+ "pagination_skip"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "activity_type_filters",
+ "alternative_names": [
+ "activity_filters_list",
+ "activity_filters_options"
+ ],
+ "description": "Comma-separated list of activity types to filter by, such as 'open', 'bounce', or 'click'.",
+ "endpoint_argument_name": "activity_filters"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/activity-feed",
+ "tags": [
+ "lists"
+ ],
+ "summary": "View recent activity",
+ "description": "Get a member's activity on a specific list, including opens, clicks, and unsubscribes.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "activity_filters",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of activity filters that correspond to a set of activity types, e.g \"?activity_filters=open,bounce,click\"."
+ },
+ "description": "A comma-separated list of activity filters that correspond to a set of activity types, e.g \"?activity_filters=open,bounce,click\".",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListMemberTags",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "retrieve_member_tags",
+ "description": {
+ "tagline": "Fetches tags for a specific mailing list member.",
+ "detailed": "Use this tool to retrieve all tags associated with a specific member of a mailing list identified by their subscriber hash."
+ },
+ "return_annotation": "List of tags for the specified member.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_value",
+ "mailing_list_id"
+ ],
+ "description": "The unique identifier for the mailing list. Required to specify which list to retrieve member tags from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "subscriber_reference",
+ "member_id"
+ ],
+ "description": "The MD5 hash of the lowercase version of the email, or email address, or contact_id of the list member.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "desired_fields",
+ "fields_selection"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_specific_fields",
+ "alternative_names": [
+ "omit_fields",
+ "ignore_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "alternative_names": [
+ "number_of_records",
+ "return_count"
+ ],
+ "description": "Specify the number of records to return, between 1 and 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "pagination_start_index"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/tags",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List member tags",
+ "description": "Get the tags on a list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListMemberTags",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_list_member_tags",
+ "description": {
+ "tagline": "Add or remove tags from a Mailchimp list member.",
+ "detailed": "Use this tool to manage tags for a specific member in a Mailchimp list. It allows adding new tags or removing existing ones. If a non-existent tag is added and marked as 'active', it will be created automatically."
+ },
+ "return_annotation": "Confirmation of tags added or removed from a list member.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to update tags for a member.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "alternative_names": [
+ "member_email_md5",
+ "email_address_hash"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "tags_update_request",
+ "alternative_names": [
+ "tags_modification_request",
+ "member_tags_sync"
+ ],
+ "description": "JSON object containing tags and their status to be added or removed from a list member. Also includes optional synchronization control with 'is_syncing'.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/tags",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add or remove member tags",
+ "description": "Add or remove tags from a list member. If a tag that does not exist is passed in and set as 'active', a new tag will be created.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the tag."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "inactive",
+ "active"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status for the tag on the member, pass in active to add a tag or inactive to remove it."
+ }
+ },
+ "description": "A list of tags assigned to the list member."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When is_syncing is true, automations based on the tags in the request will not fire"
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Member Tags",
+ "description": "A list of tags assigned to a list member.",
+ "properties": {
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "A list of tags assigned to the list member.",
+ "items": {
+ "type": "object",
+ "title": "Member Tag",
+ "description": "Add or remove tags on a member by declaring a tag either active or inactive on a member.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status for the tag on the member, pass in active to add a tag or inactive to remove it.",
+ "enum": [
+ "inactive",
+ "active"
+ ]
+ }
+ },
+ "required": [
+ "name",
+ "status"
+ ]
+ }
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "When is_syncing is true, automations based on the tags in the request will not fire"
+ }
+ },
+ "required": [
+ "tags"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Member Tags\",\n \"description\": \"A list of tags assigned to a list member.\",\n \"required\": [\n \"tags\"\n ],\n \"properties\": {\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags\",\n \"description\": \"A list of tags assigned to the list member.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Member Tag\",\n \"description\": \"Add or remove tags on a member by declaring a tag either active or inactive on a member.\",\n \"required\": [\n \"name\",\n \"status\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Tag Name\",\n \"description\": \"The name of the tag.\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"The status for the tag on the member, pass in active to add a tag or inactive to remove it.\",\n \"enum\": [\n \"inactive\",\n \"active\"\n ]\n }\n }\n }\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"When is_syncing is true, automations based on the tags in the request will not fire\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembersIdEvents",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "retrieve_contact_events",
+ "description": {
+ "tagline": "Retrieve events for a specific contact in a list.",
+ "detailed": "Use this tool to obtain detailed event information for a specific contact in a Mailchimp list. This is useful for tracking interactions or activities associated with a subscriber."
+ },
+ "return_annotation": "Contact event details for a specified list member.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_value",
+ "list_identifier"
+ ],
+ "description": "The unique identifier for the Mailchimp list from which to retrieve contact events.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "contact_identifier",
+ "alternative_names": [
+ "subscriber_identifier",
+ "email_or_contact_id"
+ ],
+ "description": "The unique identifier for the list member. This can be the MD5 hash of the lowercase email address, the email address itself, or the contact ID.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "records_to_return_count",
+ "alternative_names": [
+ "number_of_records",
+ "records_limit"
+ ],
+ "description": "The number of records to return. Default is 10 and maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "results_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "return_field_list",
+ "alternative_names": [
+ "return_fields",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated fields to exclude from the response using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/events",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List member events",
+ "description": "Get events for a contact.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListMemberEvents",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_list_member_event",
+ "description": {
+ "tagline": "Add an event for a list member in Mailchimp.",
+ "detailed": "This tool adds an event to a specific list member in Mailchimp. It should be called when you need to track a specific activity or event for a subscriber in a mailing list."
+ },
+ "return_annotation": "Confirmation of event addition for a list member.",
+ "arguments": [
+ {
+ "name": "list_identifier",
+ "alternative_names": [
+ "list_unique_id",
+ "mailing_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp list.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "list_member_identifier",
+ "alternative_names": [
+ "subscriber_identifier",
+ "email_or_contact_id"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address, or the email address/contact_id.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "event_details",
+ "alternative_names": [
+ "event_data",
+ "event_information"
+ ],
+ "description": "JSON object containing details about the event such as 'name', 'properties', 'is_syncing', and 'occurred_at'.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/events",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add event",
+ "description": "Add an event for a list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length"
+ },
+ "properties": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An optional list of properties"
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Events created with the is_syncing value set to `true` will not trigger automations."
+ },
+ "occurred_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the event occurred in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Events",
+ "description": "A new event for a specific list member",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Event Name",
+ "description": "The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length"
+ },
+ "properties": {
+ "type": "object",
+ "title": "Properties",
+ "description": "An optional list of properties",
+ "properties": {},
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Events created with the is_syncing value set to `true` will not trigger automations."
+ },
+ "occurred_at": {
+ "type": "string",
+ "title": "Occurred Time",
+ "description": "The date and time the event occurred in ISO 8601 format.",
+ "format": "date-time"
+ }
+ },
+ "required": [
+ "name"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Events\",\n \"description\": \"A new event for a specific list member\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Event Name\",\n \"description\": \"The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length\"\n },\n \"properties\": {\n \"type\": \"object\",\n \"title\": \"Properties\",\n \"description\": \"An optional list of properties\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"Events created with the is_syncing value set to `true` will not trigger automations.\"\n },\n \"occurred_at\": {\n \"type\": \"string\",\n \"title\": \"Occurred Time\",\n \"description\": \"The date and time the event occurred in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembersIdGoals",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_member_goal_events",
+ "description": {
+ "tagline": "Retrieve the last 50 goal events for a specific list member.",
+ "detailed": "Use this tool to get the most recent goal achievement events for a member within a particular Mailchimp list. This can be useful for tracking user engagement and performance metrics."
+ },
+ "return_annotation": "List of the last 50 goal events for a member.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_value",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp list. Required for fetching member goal events.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "member_hash",
+ "member_contact_id"
+ ],
+ "description": "The MD5 hash of the lowercase version of the member's email, email address, or contact_id.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "specified_fields"
+ ],
+ "description": "Comma-separated list of specific fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields",
+ "ignore_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/goals",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List member goal events",
+ "description": "Get the last 50 Goal events for a member on a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembersIdNotes",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_member_notes",
+ "description": {
+ "tagline": "Retrieve recent notes for a Mailchimp list member.",
+ "detailed": "Use this tool to access the most recent notes associated with a specific member of a Mailchimp list, identified by their subscriber hash."
+ },
+ "return_annotation": "Recent notes for a specific list member.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique ID of the Mailchimp list to retrieve notes for.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "subscriber_hash",
+ "alternative_names": [
+ "member_hash",
+ "email_hash"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address. Used to identify the list member.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "sort_notes_by_field",
+ "alternative_names": [
+ "notes_sort_field",
+ "sort_by_field"
+ ],
+ "description": "Specify the field to sort the notes by, e.g., 'created_at' or 'updated_at'.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "order_direction",
+ "alternative_names": [
+ "sort_order",
+ "direction"
+ ],
+ "description": "Specifies the order direction for sorted note results. Accepts 'asc' or 'desc'.",
+ "endpoint_argument_name": "sort_dir"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "specified_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "max_records"
+ ],
+ "description": "Specify the number of member notes to return, between 1 and 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "offset_records",
+ "skip_count"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/notes",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List recent member notes",
+ "description": "Get recent notes for a specific list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns notes sorted by the specified field."
+ },
+ "description": "Returns notes sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdMembersIdNotes",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_note_to_subscriber",
+ "description": {
+ "tagline": "Add a new note for a specific subscriber in Mailchimp.",
+ "detailed": "Use this tool to add a note to a subscriber's profile in a specific list on Mailchimp. This is useful for keeping track of important information or interactions related to the subscriber."
+ },
+ "return_annotation": "Confirmation of the note being added for a subscriber.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp list. This is required to add a note to a subscriber's profile in the specified list.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "alternative_names": [
+ "email_address_hash",
+ "member_hash"
+ ],
+ "description": "MD5 hash of the lowercase version of the subscriber's email address.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "subscriber_note_content",
+ "alternative_names": [
+ "note_content",
+ "content_of_note"
+ ],
+ "description": "The content of the note for a subscriber. It must be limited to 1,000 characters.",
+ "endpoint_argument_name": "note"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/notes",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add member note",
+ "description": "Add a new note for a specific subscriber.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "note",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "description": "The content of the note. Note length is limited to 1,000 characters.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Member Notes\",\n \"description\": \"A specific note for a specific member.\",\n \"properties\": {\n \"note\": {\n \"type\": \"string\",\n \"title\": \"Note\",\n \"description\": \"The content of the note. Note length is limited to 1,000 characters.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMembersIdNotesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_member_note",
+ "description": {
+ "tagline": "Retrieve a specific note for a list member.",
+ "detailed": "Use this tool to obtain details of a particular note associated with a member of a specific list. It's helpful for accessing specific interactions or annotations recorded for a list member."
+ },
+ "return_annotation": "Details of a specific note for a list member.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_identifier",
+ "mailing_list_id"
+ ],
+ "description": "The unique identifier for the mailing list to retrieve a member's note from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "member_key",
+ "subscriber_identifier"
+ ],
+ "description": "The MD5 hash of the lowercase email, the email address itself, or contact ID for a list member.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "note_id",
+ "alternative_names": [
+ "note_identifier",
+ "note_reference"
+ ],
+ "description": "The unique identifier for the note associated with a list member.",
+ "endpoint_argument_name": "note_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get member note",
+ "description": "Get a specific note for a specific list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "note_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "description": "The id for the note.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsIdMembersIdNotesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_member_note",
+ "description": {
+ "tagline": "Update a specific note for a list member in Mailchimp.",
+ "detailed": "This tool updates a specific note for a given list member on Mailchimp. Use this when you need to modify the content of an existing note associated with a subscriber in a mailing list."
+ },
+ "return_annotation": "Confirmation of note update for a list member.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailing_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique ID for the mailing list where the note is being updated.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "subscriber_id",
+ "email_id"
+ ],
+ "description": "The MD5 hash, email address, or contact_id of the list member.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "note_identifier",
+ "alternative_names": [
+ "note_id_value",
+ "identifier_for_note"
+ ],
+ "description": "The unique identifier for the note to be updated.",
+ "endpoint_argument_name": "note_id"
+ },
+ {
+ "name": "note_content",
+ "alternative_names": [
+ "note_text",
+ "note_message"
+ ],
+ "description": "Content of the note to be updated. Must not exceed 1,000 characters.",
+ "endpoint_argument_name": "note"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update note",
+ "description": "Update a specific note for a specific list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "note_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "description": "The id for the note.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "note",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "description": "The content of the note. Note length is limited to 1,000 characters.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Member Notes\",\n \"description\": \"A specific note for a specific member.\",\n \"properties\": {\n \"note\": {\n \"type\": \"string\",\n \"title\": \"Note\",\n \"description\": \"The content of the note. Note length is limited to 1,000 characters.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdMembersIdNotesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_member_note",
+ "description": {
+ "tagline": "Delete a specific note for a list member.",
+ "detailed": "Use this tool to delete a specific note associated with a list member in Mailchimp. It should be called when there is a need to remove a note from a contact's record in a specific list."
+ },
+ "return_annotation": "Confirmation of note deletion for a list member.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "list_id_value"
+ ],
+ "description": "The unique identifier for the list in which the member's note is to be deleted.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "alternative_names": [
+ "subscriber_identifier",
+ "contact_identifier"
+ ],
+ "description": "The MD5 hash of the member's email (in lowercase), the email itself, or contact_id for identifying list members.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "note_id",
+ "alternative_names": [
+ "note_identifier",
+ "note_unique_id"
+ ],
+ "description": "The ID for the specific note you want to delete for a list member.",
+ "endpoint_argument_name": "note_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete note",
+ "description": "Delete a specific note for a specific list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "note_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "description": "The id for the note.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdMembersHashActionsDeletePermanent",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_member_data_permanently",
+ "description": {
+ "tagline": "Permanently delete a list member's data in Mailchimp.",
+ "detailed": "This tool deletes all personally identifiable information related to a specific list member and removes them from the list, ensuring they cannot be re-imported."
+ },
+ "return_annotation": "Confirmation of member data deletion from list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mail_list_id",
+ "newsletter_list_id"
+ ],
+ "description": "The unique ID of the list from which the member will be deleted. This ID identifies the target list in Mailchimp.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "member_email_hash",
+ "alternative_names": [
+ "email_md5_hash",
+ "email_lowercase_hash"
+ ],
+ "description": "MD5 hash of the lowercase version of the member's email address.",
+ "endpoint_argument_name": "subscriber_hash"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/members/{subscriber_hash}/actions/delete-permanent",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete list member",
+ "description": "Delete all personally identifiable information related to a list member, and remove them from a list. This will make it impossible to re-import the list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMergeFields",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_audience_merge_fields",
+ "description": {
+ "tagline": "Get a list of all merge fields for an audience.",
+ "detailed": "Use this tool to retrieve all the merge fields associated with a specific audience in Mailchimp. This is useful for understanding the structure and data fields available within an audience."
+ },
+ "return_annotation": "List of all merge fields for a specified audience.",
+ "arguments": [
+ {
+ "name": "audience_list_id",
+ "alternative_names": [
+ "mailing_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique ID for the audience list in Mailchimp.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "fields_specification"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "exclude_fields_comma_separated",
+ "fields_to_exclude"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "record_count",
+ "records_limit"
+ ],
+ "description": "Specify the number of records to return, between 1 and 1000 (default is 10).",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "record_skip_count",
+ "list_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "merge_field_type",
+ "alternative_names": [
+ "field_type",
+ "type_of_merge_field"
+ ],
+ "description": "Specify the type of merge field to retrieve, such as 'text', 'number', etc.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "is_required_merge_field",
+ "alternative_names": [
+ "require_merge_field",
+ "merge_field_mandatory"
+ ],
+ "description": "Indicates if the merge field is required. Pass 'true' or 'false'.",
+ "endpoint_argument_name": "required"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/merge-fields",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List merge fields",
+ "description": "Get a list of all merge fields for an audience.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge field type."
+ },
+ "description": "The merge field type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "required",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether it's a required merge field."
+ },
+ "description": "Whether it's a required merge field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdMergeFields",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_audience_merge_field",
+ "description": {
+ "tagline": "Add a new merge field to a specific audience.",
+ "detailed": "This tool is used to add a new merge field for a specific audience in Mailchimp. It should be called when you need to enhance the audience profile with additional information fields."
+ },
+ "return_annotation": "Information about the newly added merge field.",
+ "arguments": [
+ {
+ "name": "audience_list_id",
+ "alternative_names": [
+ "list_identifier",
+ "audience_id"
+ ],
+ "description": "The unique ID of the Mailchimp audience list to which the merge field will be added.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "merge_field_details",
+ "alternative_names": [
+ "merge_field_configuration",
+ "audience_field_data"
+ ],
+ "description": "The details for the new merge field, including tag, name, type, required status, default value, visibility, display order, options, and help text.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/merge-fields",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add merge field",
+ "description": "Add a new merge field for a specific audience.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tag": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field."
+ },
+ "required": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "default_country": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from."
+ },
+ "size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a text field, the default length of the text field."
+ }
+ },
+ "inner_properties": null,
+ "description": "Extra options for some merge field types."
+ },
+ "help_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ]
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "size": {
+ "type": "integer",
+ "title": "Text Field Size",
+ "description": "In a text field, the default length of the text field."
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "required": [
+ "name",
+ "type"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Merge Field\",\n \"description\": \"A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.\",\n \"required\": [\n \"name\",\n \"type\"\n ],\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n \"title\": \"Merge Tag\",\n \"description\": \"The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts).\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Name\",\n \"description\": \"The name of the merge field (audience field).\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Type\",\n \"description\": \"The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.\",\n \"enum\": [\n \"text\",\n \"number\",\n \"address\",\n \"phone\",\n \"date\",\n \"url\",\n \"imageurl\",\n \"radio\",\n \"dropdown\",\n \"birthday\",\n \"zip\"\n ]\n },\n \"required\": {\n \"type\": \"boolean\",\n \"title\": \"Required\",\n \"description\": \"Whether the merge field is required to import a contact.\"\n },\n \"default_value\": {\n \"type\": \"string\",\n \"title\": \"Default Value\",\n \"description\": \"The default value for the merge field if `null`.\"\n },\n \"public\": {\n \"type\": \"boolean\",\n \"title\": \"Merge Field Public Status\",\n \"description\": \"Whether the merge field is displayed on the signup form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the merge field displays on the list signup form.\"\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Merge Field Options\",\n \"description\": \"Extra options for some merge field types.\",\n \"properties\": {\n \"default_country\": {\n \"type\": \"integer\",\n \"title\": \"Default Country\",\n \"description\": \"In an address field, the default country code if none supplied.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"phone_format\": {\n \"type\": \"string\",\n \"title\": \"Phone Type\",\n \"description\": \"In a phone field, the phone number type: US or International.\"\n },\n \"date_format\": {\n \"type\": \"string\",\n \"title\": \"Date Type\",\n \"description\": \"In a date or birthday field, the format of the date.\"\n },\n \"choices\": {\n \"type\": \"array\",\n \"title\": \"Choices\",\n \"description\": \"In a radio or dropdown non-group field, the available options for contacts to pick from.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"example\": [\n \"First Choice\",\n \"Second Choice\",\n \"Third Choice\"\n ]\n },\n \"size\": {\n \"type\": \"integer\",\n \"title\": \"Text Field Size\",\n \"description\": \"In a text field, the default length of the text field.\"\n }\n }\n },\n \"help_text\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Help Text\",\n \"description\": \"Extra text to help the subscriber fill out the form.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdMergeFieldsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_merge_field_info",
+ "description": {
+ "tagline": "Retrieve information about a specific merge field.",
+ "detailed": "Use this tool to obtain detailed information about a specific merge field in a Mailchimp list. It's useful for accessing customized data fields associated with members of email lists."
+ },
+ "return_annotation": "Details about a specific merge field.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "list_identifier",
+ "unique_list_id"
+ ],
+ "description": "The unique ID of the Mailchimp list to get merge field information from.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "merge_field_id",
+ "alternative_names": [
+ "merge_identifier",
+ "merge_field_key"
+ ],
+ "description": "The unique identifier for the merge field in the list.",
+ "endpoint_argument_name": "merge_id"
+ },
+ {
+ "name": "exclude_merge_fields",
+ "alternative_names": [
+ "omit_merge_fields",
+ "skip_merge_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "Specify the fields to return, using comma-separated dot notation for nested fields.",
+ "endpoint_argument_name": "fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/merge-fields/{merge_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get merge field",
+ "description": "Get information about a specific merge field.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "merge_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "description": "The id for the merge field.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsIdMergeFieldsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_merge_field",
+ "description": {
+ "tagline": "Update a specific merge field in a list.",
+ "detailed": "This tool updates a specific merge field for a given list in Mailchimp. Use it when you need to modify the properties of a merge field, such as its name or type, within a specific list."
+ },
+ "return_annotation": "Details of the updated merge field.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailing_list_id"
+ ],
+ "description": "The unique ID for the list to update the merge field in.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "merge_field_id",
+ "alternative_names": [
+ "field_id",
+ "merge_field_identification"
+ ],
+ "description": "The unique ID for the specific merge field to be updated.",
+ "endpoint_argument_name": "merge_id"
+ },
+ {
+ "name": "merge_field_update_data",
+ "alternative_names": [
+ "merge_field_data",
+ "field_update_info"
+ ],
+ "description": "A JSON object containing details of the merge field to update. Include properties like tag, name, required, default_value, public, display_order, options, and help_text.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}/merge-fields/{merge_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update merge field",
+ "description": "Update a specific merge field.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "merge_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "description": "The id for the merge field.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tag": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the merge field (audience field)."
+ },
+ "required": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "default_country": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a radio or dropdown non-group field, the available options for members to pick from."
+ }
+ },
+ "inner_properties": null,
+ "description": "Extra options for some merge field types."
+ },
+ "help_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for members to pick from.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Merge Field\",\n \"description\": \"A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n \"title\": \"Merge Tag\",\n \"description\": \"The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts).\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Name\",\n \"description\": \"The name of the merge field (audience field).\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"title\": \"Required\",\n \"description\": \"Whether the merge field is required to import a contact.\"\n },\n \"default_value\": {\n \"type\": \"string\",\n \"title\": \"Default Value\",\n \"description\": \"The default value for the merge field if `null`.\"\n },\n \"public\": {\n \"type\": \"boolean\",\n \"title\": \"Merge Field Public Status\",\n \"description\": \"Whether the merge field is displayed on the signup form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the merge field displays on the list signup form.\"\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Merge Field Options\",\n \"description\": \"Extra options for some merge field types.\",\n \"properties\": {\n \"default_country\": {\n \"type\": \"integer\",\n \"title\": \"Default Country\",\n \"description\": \"In an address field, the default country code if none supplied.\"\n },\n \"phone_format\": {\n \"type\": \"string\",\n \"title\": \"Phone Type\",\n \"description\": \"In a phone field, the phone number type: US or International.\"\n },\n \"date_format\": {\n \"type\": \"string\",\n \"title\": \"Date Type\",\n \"description\": \"In a date or birthday field, the format of the date.\"\n },\n \"choices\": {\n \"type\": \"array\",\n \"title\": \"Choices\",\n \"description\": \"In a radio or dropdown non-group field, the available options for members to pick from.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"example\": [\n \"First Choice\",\n \"Second Choice\",\n \"Third Choice\"\n ]\n }\n }\n },\n \"help_text\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Help Text\",\n \"description\": \"Extra text to help the subscriber fill out the form.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdMergeFieldsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_merge_field",
+ "description": {
+ "tagline": "Delete a specific merge field from a Mailchimp list.",
+ "detailed": "Use this tool to remove a specific merge field from a Mailchimp list. This action is irreversible and will delete the specified merge field associated with the given list."
+ },
+ "return_annotation": "Confirmation of merge field deletion.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_key",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list from which to delete the merge field.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "merge_field_id",
+ "alternative_names": [
+ "merge_id_input",
+ "field_id"
+ ],
+ "description": "The ID for the merge field to delete from the Mailchimp list.",
+ "endpoint_argument_name": "merge_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/merge-fields/{merge_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete merge field",
+ "description": "Delete a specific merge field.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "merge_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "description": "The id for the merge field.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdWebhooks",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_webhooks_info",
+ "description": {
+ "tagline": "Get information about all webhooks for a specific list.",
+ "detailed": "Use this tool to retrieve detailed information about all the webhooks associated with a specified mailing list. Ideal for managing or auditing webhook configurations."
+ },
+ "return_annotation": "Information about all webhooks for a specific list.",
+ "arguments": [
+ {
+ "name": "list_unique_identifier",
+ "alternative_names": [
+ "list_id_number",
+ "unique_list_key"
+ ],
+ "description": "The unique identifier for the mailing list to retrieve webhook information.",
+ "endpoint_argument_name": "list_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/webhooks",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List webhooks",
+ "description": "Get information about all webhooks for a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdWebhooks",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_webhook",
+ "description": {
+ "tagline": "Create a new webhook for a specific Mailchimp list.",
+ "detailed": "Use this tool to set up a new webhook for a designated list in Mailchimp, allowing automated event-driven notifications."
+ },
+ "return_annotation": "Confirmation of the webhook creation for the list.",
+ "arguments": [
+ {
+ "name": "mailchimp_list_id",
+ "alternative_names": [
+ "list_identifier",
+ "list_id_input"
+ ],
+ "description": "The unique ID for the Mailchimp list for which the webhook will be created.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "webhook_configuration",
+ "alternative_names": [
+ "webhook_settings",
+ "webhook_details"
+ ],
+ "description": "A JSON object defining the webhook URL, trigger events, and sources. Includes 'url': string (Webhook URL), 'events': object (e.g., 'subscribe': boolean), 'sources': object (e.g., 'user': boolean).",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/webhooks",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Add webhook",
+ "description": "Create a new webhook for a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "events": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list subscriber is added."
+ },
+ "unsubscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list member unsubscribes."
+ },
+ "profile": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated."
+ },
+ "cleaned": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list."
+ },
+ "upemail": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed."
+ },
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled."
+ }
+ },
+ "inner_properties": null,
+ "description": "The events that can trigger the webhook and whether they are enabled."
+ },
+ "sources": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "user": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by subscriber-initiated actions."
+ },
+ "admin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface."
+ },
+ "api": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by actions initiated via the API."
+ }
+ },
+ "inner_properties": null,
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Add Webhook",
+ "description": "Configure a webhook for the given list.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add Webhook\",\n \"description\": \"Configure a webhook for the given list.\",\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"events\": {\n \"type\": \"object\",\n \"title\": \"Events\",\n \"description\": \"The events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"subscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Subscribed\",\n \"description\": \"Whether the webhook is triggered when a list subscriber is added.\",\n \"example\": true\n },\n \"unsubscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Unsubscribed\",\n \"description\": \"Whether the webhook is triggered when a list member unsubscribes.\",\n \"example\": true\n },\n \"profile\": {\n \"type\": \"boolean\",\n \"title\": \"Profile Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's profile is updated.\",\n \"example\": true\n },\n \"cleaned\": {\n \"type\": \"boolean\",\n \"title\": \"Cleaned\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is cleaned from the list.\",\n \"example\": true\n },\n \"upemail\": {\n \"type\": \"boolean\",\n \"title\": \"Email Address Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is changed.\",\n \"example\": true\n },\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Campaign Sent\",\n \"description\": \"Whether the webhook is triggered when a campaign is sent or cancelled.\",\n \"example\": true\n }\n }\n },\n \"sources\": {\n \"type\": \"object\",\n \"title\": \"Sources\",\n \"description\": \"The possible sources of any events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"user\": {\n \"type\": \"boolean\",\n \"title\": \"User\",\n \"description\": \"Whether the webhook is triggered by subscriber-initiated actions.\",\n \"example\": true\n },\n \"admin\": {\n \"type\": \"boolean\",\n \"title\": \"Admin\",\n \"description\": \"Whether the webhook is triggered by admin-initiated actions in the web interface.\",\n \"example\": true\n },\n \"api\": {\n \"type\": \"boolean\",\n \"title\": \"API\",\n \"description\": \"Whether the webhook is triggered by actions initiated via the API.\",\n \"example\": true\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdWebhooksId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_webhook_info",
+ "description": {
+ "tagline": "Retrieve details of a specific Mailchimp webhook.",
+ "detailed": "Use this tool to get detailed information about a specific webhook in your Mailchimp list by providing the list and webhook IDs."
+ },
+ "return_annotation": "Information about a specific Mailchimp webhook.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "unique_list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list to retrieve the webhook information.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "webhook_id",
+ "alternative_names": [
+ "webhook_identifier",
+ "notification_id"
+ ],
+ "description": "Provide the unique ID of the webhook to retrieve its information.",
+ "endpoint_argument_name": "webhook_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/webhooks/{webhook_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get webhook info",
+ "description": "Get information about a specific webhook.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "webhook_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "description": "The webhook's id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteListsIdWebhooksId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_mailchimp_webhook",
+ "description": {
+ "tagline": "Delete a specific webhook from a Mailchimp list.",
+ "detailed": "Use this tool to remove a webhook from a specified Mailchimp list by providing the list and webhook IDs."
+ },
+ "return_annotation": "Confirmation of the webhook deletion.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "newsletter_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list from which the webhook will be deleted. This ID identifies the list containing the target webhook.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "webhook_id",
+ "alternative_names": [
+ "webhook_identifier",
+ "webhook_key"
+ ],
+ "description": "The unique identifier for the webhook to be deleted from the specified Mailchimp list.",
+ "endpoint_argument_name": "webhook_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/lists/{list_id}/webhooks/{webhook_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Delete webhook",
+ "description": "Delete a specific webhook in a list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "webhook_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "description": "The webhook's id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchListsIdWebhooksId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_webhook_settings",
+ "description": {
+ "tagline": "Update the settings for an existing webhook.",
+ "detailed": "Use this tool to modify the configuration of a specific webhook linked to a mailing list. This is useful for changing how the webhook operates without creating a new one."
+ },
+ "return_annotation": "Confirmation of webhook settings update.",
+ "arguments": [
+ {
+ "name": "list_id",
+ "alternative_names": [
+ "mailing_list_id",
+ "subscriber_list_id"
+ ],
+ "description": "The unique identifier for the mailing list associated with the webhook.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "webhook_identifier",
+ "alternative_names": [
+ "webhook_id_code",
+ "webhook_reference_id"
+ ],
+ "description": "The unique identifier for the webhook to be updated.",
+ "endpoint_argument_name": "webhook_id"
+ },
+ {
+ "name": "webhook_settings",
+ "alternative_names": [
+ "webhook_configuration",
+ "webhook_options"
+ ],
+ "description": "JSON object with webhook URL, events, and sources configuration, such as triggering options.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/lists/{list_id}/webhooks/{webhook_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Update webhook",
+ "description": "Update the settings for an existing webhook.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "webhook_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "description": "The webhook's id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "events": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list subscriber is added."
+ },
+ "unsubscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list member unsubscribes."
+ },
+ "profile": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated."
+ },
+ "cleaned": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list."
+ },
+ "upemail": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed."
+ },
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled."
+ }
+ },
+ "inner_properties": null,
+ "description": "The events that can trigger the webhook and whether they are enabled."
+ },
+ "sources": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "user": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by subscriber-initiated actions."
+ },
+ "admin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface."
+ },
+ "api": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by actions initiated via the API."
+ }
+ },
+ "inner_properties": null,
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Add Webhook",
+ "description": "Configure a webhook for the given list.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add Webhook\",\n \"description\": \"Configure a webhook for the given list.\",\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"events\": {\n \"type\": \"object\",\n \"title\": \"Events\",\n \"description\": \"The events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"subscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Subscribed\",\n \"description\": \"Whether the webhook is triggered when a list subscriber is added.\",\n \"example\": true\n },\n \"unsubscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Unsubscribed\",\n \"description\": \"Whether the webhook is triggered when a list member unsubscribes.\",\n \"example\": true\n },\n \"profile\": {\n \"type\": \"boolean\",\n \"title\": \"Profile Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's profile is updated.\",\n \"example\": true\n },\n \"cleaned\": {\n \"type\": \"boolean\",\n \"title\": \"Cleaned\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is cleaned from the list.\",\n \"example\": true\n },\n \"upemail\": {\n \"type\": \"boolean\",\n \"title\": \"Email Address Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is changed.\",\n \"example\": true\n },\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Campaign Sent\",\n \"description\": \"Whether the webhook is triggered when a campaign is sent or cancelled.\",\n \"example\": true\n }\n }\n },\n \"sources\": {\n \"type\": \"object\",\n \"title\": \"Sources\",\n \"description\": \"The possible sources of any events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"user\": {\n \"type\": \"boolean\",\n \"title\": \"User\",\n \"description\": \"Whether the webhook is triggered by subscriber-initiated actions.\",\n \"example\": true\n },\n \"admin\": {\n \"type\": \"boolean\",\n \"title\": \"Admin\",\n \"description\": \"Whether the webhook is triggered by admin-initiated actions in the web interface.\",\n \"example\": true\n },\n \"api\": {\n \"type\": \"boolean\",\n \"title\": \"API\",\n \"description\": \"Whether the webhook is triggered by actions initiated via the API.\",\n \"example\": true\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdSignupForms",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_signup_forms",
+ "description": {
+ "tagline": "Retrieve signup forms for a Mailchimp list.",
+ "detailed": "Use this tool to fetch all signup forms associated with a specific Mailchimp list using the list ID."
+ },
+ "return_annotation": "Returns signup forms for a specified list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "unique_list_id"
+ ],
+ "description": "The unique ID of the Mailchimp list for retrieving signup forms.",
+ "endpoint_argument_name": "list_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/signup-forms",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List signup forms",
+ "description": "Get signup forms for a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdSignupForms",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "customize_list_signup_form",
+ "description": {
+ "tagline": "Customize a list's default signup form in Mailchimp.",
+ "detailed": "Use this tool to modify the default signup form for a specific list in Mailchimp's marketing platform. Ideal for tailoring signup forms to better match branding or collect specific user information."
+ },
+ "return_annotation": "Confirmation of signup form customization.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list to customize the signup form.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "signup_form_customization_options",
+ "alternative_names": [
+ "form_customization_details",
+ "customization_payload"
+ ],
+ "description": "A JSON object containing header settings, body content, and styles for the signup form. It includes header image details, content sections like signup messages, and style properties for elements such as buttons and backgrounds.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/signup-forms",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Customize signup form",
+ "description": "Customize a list's default signup form.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "header": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Header image URL."
+ },
+ "text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Header text."
+ },
+ "image_width": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image width, in pixels."
+ },
+ "image_height": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image height, in pixels."
+ },
+ "image_alt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Alt text for the image."
+ },
+ "image_link": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL that the header image will link to."
+ },
+ "image_align": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "none",
+ "left",
+ "center",
+ "right"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image alignment."
+ },
+ "image_border_width": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border width."
+ },
+ "image_border_style": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "none",
+ "solid",
+ "dotted",
+ "dashed",
+ "double",
+ "groove",
+ "outset",
+ "inset",
+ "ridge"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border style."
+ },
+ "image_border_color": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border color."
+ },
+ "image_target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "_blank",
+ "null"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image link target."
+ }
+ },
+ "inner_properties": null,
+ "description": "Options for customizing your signup form header."
+ },
+ "contents": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "section": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup_message",
+ "unsub_message",
+ "signup_thank_you_title"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content section name."
+ },
+ "value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content section text."
+ }
+ },
+ "description": "The signup form body content."
+ },
+ "styles": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "selector": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "page_background",
+ "page_header",
+ "page_outer_wrapper",
+ "body_background",
+ "body_link_style",
+ "forms_buttons",
+ "forms_buttons_hovered",
+ "forms_field_label",
+ "forms_field_text",
+ "forms_required",
+ "forms_required_legend",
+ "forms_help_text",
+ "forms_errors",
+ "monkey_rewards_badge"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies the element selector."
+ },
+ "options": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "property": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies the property."
+ },
+ "value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies value of the property."
+ }
+ },
+ "description": "A collection of options for a selector."
+ }
+ },
+ "description": "An array of objects, each representing an element style for the signup form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "Signup Form",
+ "description": "List signup form.",
+ "properties": {
+ "header": {
+ "type": "object",
+ "title": "Signup form header options",
+ "description": "Options for customizing your signup form header.",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Header Image URL",
+ "description": "Header image URL.",
+ "example": "http://gallery.mailchimp.com/332310cb9a420a9e7fea2858a/images/2491208c-9458-4834-a708-fef4ee736472.png"
+ },
+ "text": {
+ "type": "string",
+ "title": "Header Text",
+ "description": "Header text.",
+ "example": "Header Text goes here"
+ },
+ "image_width": {
+ "type": "string",
+ "title": "Image width",
+ "description": "Image width, in pixels.",
+ "example": "800"
+ },
+ "image_height": {
+ "type": "string",
+ "title": "Image height",
+ "description": "Image height, in pixels.",
+ "example": "200"
+ },
+ "image_alt": {
+ "type": "string",
+ "title": "Image Alt",
+ "description": "Alt text for the image.",
+ "example": "This is an image"
+ },
+ "image_link": {
+ "type": "string",
+ "title": "Image Link",
+ "description": "The URL that the header image will link to.",
+ "example": "gotothisimage.com"
+ },
+ "image_align": {
+ "type": "string",
+ "title": "Image align",
+ "description": "Image alignment.",
+ "enum": [
+ "none",
+ "left",
+ "center",
+ "right"
+ ],
+ "example": "center"
+ },
+ "image_border_width": {
+ "type": "string",
+ "title": "Image border width",
+ "description": "Image border width.",
+ "example": "2"
+ },
+ "image_border_style": {
+ "type": "string",
+ "title": "Image border style",
+ "description": "Image border style.",
+ "enum": [
+ "none",
+ "solid",
+ "dotted",
+ "dashed",
+ "double",
+ "groove",
+ "outset",
+ "inset",
+ "ridge"
+ ],
+ "example": "solid"
+ },
+ "image_border_color": {
+ "type": "string",
+ "title": "Image border color",
+ "description": "Image border color.",
+ "example": "#896d6d"
+ },
+ "image_target": {
+ "type": "string",
+ "title": "Image target",
+ "description": "Image link target.",
+ "enum": [
+ "_blank",
+ "null"
+ ],
+ "example": "_blank"
+ }
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Signup form body content",
+ "description": "The signup form body content.",
+ "items": {
+ "type": "object",
+ "title": "Collection of Content for List Signup Forms",
+ "description": "Collection of Content for List Signup Forms.",
+ "properties": {
+ "section": {
+ "type": "string",
+ "title": "Content Section Name",
+ "description": "The content section name.",
+ "enum": [
+ "signup_message",
+ "unsub_message",
+ "signup_thank_you_title"
+ ],
+ "example": "signup_message"
+ },
+ "value": {
+ "type": "string",
+ "title": "Content Section Value",
+ "description": "The content section text.",
+ "example": "Signup message goes here"
+ }
+ }
+ }
+ },
+ "styles": {
+ "type": "array",
+ "title": "Signup Form element style",
+ "description": "An array of objects, each representing an element style for the signup form.",
+ "items": {
+ "type": "object",
+ "title": "Collection of Element style for List Signup Forms",
+ "description": "Collection of Element style for List Signup Forms.",
+ "properties": {
+ "selector": {
+ "type": "string",
+ "title": "Selector",
+ "description": "A string that identifies the element selector.",
+ "enum": [
+ "page_background",
+ "page_header",
+ "page_outer_wrapper",
+ "body_background",
+ "body_link_style",
+ "forms_buttons",
+ "forms_buttons_hovered",
+ "forms_field_label",
+ "forms_field_text",
+ "forms_required",
+ "forms_required_legend",
+ "forms_help_text",
+ "forms_errors",
+ "monkey_rewards_badge"
+ ],
+ "example": "page_background"
+ },
+ "options": {
+ "type": "array",
+ "title": "Options",
+ "description": "A collection of options for a selector.",
+ "items": {
+ "type": "object",
+ "title": "An option for Signup Form Styles",
+ "description": "An option for Signup Form Styles.",
+ "properties": {
+ "property": {
+ "type": "string",
+ "title": "Property",
+ "description": "A string that identifies the property.",
+ "example": "background-color"
+ },
+ "value": {
+ "type": "string",
+ "title": "Value",
+ "description": "A string that identifies value of the property.",
+ "example": "#111111"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Signup Form\",\n \"description\": \"List signup form.\",\n \"properties\": {\n \"header\": {\n \"type\": \"object\",\n \"title\": \"Signup form header options\",\n \"description\": \"Options for customizing your signup form header.\",\n \"properties\": {\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Header Image URL\",\n \"description\": \"Header image URL.\",\n \"example\": \"http://gallery.mailchimp.com/332310cb9a420a9e7fea2858a/images/2491208c-9458-4834-a708-fef4ee736472.png\"\n },\n \"text\": {\n \"type\": \"string\",\n \"title\": \"Header Text\",\n \"description\": \"Header text.\",\n \"example\": \"Header Text goes here\"\n },\n \"image_width\": {\n \"type\": \"string\",\n \"title\": \"Image width\",\n \"description\": \"Image width, in pixels.\",\n \"example\": \"800\"\n },\n \"image_height\": {\n \"type\": \"string\",\n \"title\": \"Image height\",\n \"description\": \"Image height, in pixels.\",\n \"example\": \"200\"\n },\n \"image_alt\": {\n \"type\": \"string\",\n \"title\": \"Image Alt\",\n \"description\": \"Alt text for the image.\",\n \"example\": \"This is an image\"\n },\n \"image_link\": {\n \"type\": \"string\",\n \"title\": \"Image Link\",\n \"description\": \"The URL that the header image will link to.\",\n \"example\": \"gotothisimage.com\"\n },\n \"image_align\": {\n \"type\": \"string\",\n \"title\": \"Image align\",\n \"description\": \"Image alignment.\",\n \"enum\": [\n \"none\",\n \"left\",\n \"center\",\n \"right\"\n ],\n \"example\": \"center\"\n },\n \"image_border_width\": {\n \"type\": \"string\",\n \"title\": \"Image border width\",\n \"description\": \"Image border width.\",\n \"example\": \"2\"\n },\n \"image_border_style\": {\n \"type\": \"string\",\n \"title\": \"Image border style\",\n \"description\": \"Image border style.\",\n \"enum\": [\n \"none\",\n \"solid\",\n \"dotted\",\n \"dashed\",\n \"double\",\n \"groove\",\n \"outset\",\n \"inset\",\n \"ridge\"\n ],\n \"example\": \"solid\"\n },\n \"image_border_color\": {\n \"type\": \"string\",\n \"title\": \"Image border color\",\n \"description\": \"Image border color.\",\n \"example\": \"#896d6d\"\n },\n \"image_target\": {\n \"type\": \"string\",\n \"title\": \"Image target\",\n \"description\": \"Image link target.\",\n \"enum\": [\n \"_blank\",\n \"null\"\n ],\n \"example\": \"_blank\"\n }\n }\n },\n \"contents\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Collection of Content for List Signup Forms\",\n \"description\": \"Collection of Content for List Signup Forms.\",\n \"properties\": {\n \"section\": {\n \"type\": \"string\",\n \"title\": \"Content Section Name\",\n \"description\": \"The content section name.\",\n \"enum\": [\n \"signup_message\",\n \"unsub_message\",\n \"signup_thank_you_title\"\n ],\n \"example\": \"signup_message\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Content Section Value\",\n \"description\": \"The content section text.\",\n \"example\": \"Signup message goes here\"\n }\n }\n },\n \"title\": \"Signup form body content\",\n \"description\": \"The signup form body content.\"\n },\n \"styles\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Collection of Element style for List Signup Forms\",\n \"description\": \"Collection of Element style for List Signup Forms.\",\n \"properties\": {\n \"selector\": {\n \"type\": \"string\",\n \"title\": \"Selector\",\n \"description\": \"A string that identifies the element selector.\",\n \"enum\": [\n \"page_background\",\n \"page_header\",\n \"page_outer_wrapper\",\n \"body_background\",\n \"body_link_style\",\n \"forms_buttons\",\n \"forms_buttons_hovered\",\n \"forms_field_label\",\n \"forms_field_text\",\n \"forms_required\",\n \"forms_required_legend\",\n \"forms_help_text\",\n \"forms_errors\",\n \"monkey_rewards_badge\"\n ],\n \"example\": \"page_background\"\n },\n \"options\": {\n \"type\": \"array\",\n \"title\": \"Options\",\n \"description\": \"A collection of options for a selector.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"An option for Signup Form Styles\",\n \"description\": \"An option for Signup Form Styles.\",\n \"properties\": {\n \"property\": {\n \"type\": \"string\",\n \"title\": \"Property\",\n \"description\": \"A string that identifies the property.\",\n \"example\": \"background-color\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Value\",\n \"description\": \"A string that identifies value of the property.\",\n \"example\": \"#111111\"\n }\n }\n }\n }\n }\n },\n \"title\": \"Signup Form element style\",\n \"description\": \"An array of objects, each representing an element style for the signup form.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdLocations",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_subscriber_locations",
+ "description": {
+ "tagline": "Retrieve subscriber location data by list.",
+ "detailed": "Call this tool to get the countries associated with the subscribers of a specific list in Mailchimp, based on geocoded IP addresses."
+ },
+ "return_annotation": "List of countries based on geocoded subscriber IPs.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_unique",
+ "subscriber_list_id"
+ ],
+ "description": "The unique ID for the subscriber list in Mailchimp.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_include",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/locations",
+ "tags": [
+ "lists"
+ ],
+ "summary": "List locations",
+ "description": "Get the locations (countries) that the list's subscribers have been tagged to based on geocoding their IP address.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdSurveys",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_list_surveys_info",
+ "description": {
+ "tagline": "Retrieve information about surveys for a specific list.",
+ "detailed": "Call this tool to get information about all available surveys associated with a specific list in Mailchimp. Useful for managing and analyzing survey data linked to email lists."
+ },
+ "return_annotation": "Information about available surveys for a specific list.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "email_list_id",
+ "newsletter_list_id"
+ ],
+ "description": "The unique identifier for the list to retrieve survey information. This ID is essential for specifying which list's surveys to access.",
+ "endpoint_argument_name": "list_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/surveys",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get information about all surveys for a list",
+ "description": "Get information about all available surveys for a specific list.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getListsIdSurveysId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_details",
+ "description": {
+ "tagline": "Retrieve details about a specific Mailchimp survey.",
+ "detailed": "Use this tool to gather detailed information about a particular survey associated with a specific list in Mailchimp. It is helpful for understanding survey content, status, and related data."
+ },
+ "return_annotation": "Details about the specified survey.",
+ "arguments": [
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "list_id_key",
+ "mailchimp_list_id"
+ ],
+ "description": "The unique identifier for the Mailchimp list associated with the survey.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "survey_id",
+ "alternative_names": [
+ "survey_identifier",
+ "questionnaire_id"
+ ],
+ "description": "The unique ID of the survey to retrieve details for in Mailchimp.",
+ "endpoint_argument_name": "survey_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/lists/{list_id}/surveys/{survey_id}",
+ "tags": [
+ "lists"
+ ],
+ "summary": "Get survey",
+ "description": "Get details about a specific survey.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdSurveysIdActionsPublish",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "publish_mailchimp_survey",
+ "description": {
+ "tagline": "Publishes a Mailchimp survey from draft to published status.",
+ "detailed": "Use this tool to publish a Mailchimp survey that is currently in draft, unpublished, or has been edited after previous publication. The tool confirms the survey's new status upon successful publishing."
+ },
+ "return_annotation": "Confirmation of the survey's publishing status.",
+ "arguments": [
+ {
+ "name": "mailchimp_list_id",
+ "alternative_names": [
+ "list_identifier",
+ "mailchimp_list_identifier"
+ ],
+ "description": "The unique ID for the Mailchimp list associated with the survey.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "survey_id",
+ "alternative_names": [
+ "survey_identifier",
+ "id_of_survey"
+ ],
+ "description": "The unique identifier of the survey to be published. Required for specifying which survey to publish.",
+ "endpoint_argument_name": "survey_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/surveys/{survey_id}/actions/publish",
+ "tags": [
+ "Surveys"
+ ],
+ "summary": "Publish a Survey",
+ "description": "Publish a survey that is in draft, unpublished, or has been previously published and edited.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdSurveysIdActionsUnpublish",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "unpublish_mailchimp_survey",
+ "description": {
+ "tagline": "Unpublish a survey in Mailchimp Marketing.",
+ "detailed": "Use this tool to unpublish a survey that has been published in Mailchimp Marketing. This action is useful when you need to deactivate a survey for any reason."
+ },
+ "return_annotation": "Confirms the unpublishing of a Mailchimp survey.",
+ "arguments": [
+ {
+ "name": "mailchimp_list_id",
+ "alternative_names": [
+ "campaign_list_id",
+ "newsletter_list_id"
+ ],
+ "description": "The unique ID for the Mailchimp list associated with the survey to unpublish.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "survey_id",
+ "alternative_names": [
+ "survey_identifier",
+ "survey_code"
+ ],
+ "description": "Enter the unique ID of the survey to unpublish in Mailchimp.",
+ "endpoint_argument_name": "survey_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/surveys/{survey_id}/actions/unpublish",
+ "tags": [
+ "Surveys"
+ ],
+ "summary": "Unpublish a Survey",
+ "description": "Unpublish a survey that has been published.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postListsIdSurveysIdActionsCreateEmail",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_survey_campaign_email",
+ "description": {
+ "tagline": "Generate a campaign email linking to a survey.",
+ "detailed": "Use this tool to create an email campaign that includes a link to a given survey, using specified List ID and Survey ID."
+ },
+ "return_annotation": "Creates a campaign email linked to a survey.",
+ "arguments": [
+ {
+ "name": "list_identifier",
+ "alternative_names": [
+ "list_unique_id",
+ "email_list_id"
+ ],
+ "description": "The unique identifier for the email list.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "survey_identifier",
+ "alternative_names": [
+ "survey_id_code",
+ "survey_reference_id"
+ ],
+ "description": "The unique identifier for the survey to link in the campaign email.",
+ "endpoint_argument_name": "survey_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/lists/{list_id}/surveys/{survey_id}/actions/create-email",
+ "tags": [
+ "Surveys"
+ ],
+ "summary": "Create a Survey Campaign",
+ "description": "Utilize the List ID and Survey ID to generate a Campaign that links to your survey.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "description": "The unique ID for the list.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAllLandingPages",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_all_landing_pages",
+ "description": {
+ "tagline": "Retrieve all landing pages from Mailchimp.",
+ "detailed": "Use this tool to obtain a comprehensive list of all landing pages available in your Mailchimp account. Useful for marketing analysis and content management."
+ },
+ "return_annotation": "A list of all landing pages.",
+ "arguments": [
+ {
+ "name": "sort_direction",
+ "alternative_names": [
+ "order_direction",
+ "sorting_order"
+ ],
+ "description": "Specifies the order direction for sorting the results (e.g., ascending or descending).",
+ "endpoint_argument_name": "sort_dir"
+ },
+ {
+ "name": "sort_by_field",
+ "alternative_names": [
+ "order_by_field",
+ "arrange_by_field"
+ ],
+ "description": "Specify the field by which the landing pages should be sorted.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "specific_fields"
+ ],
+ "description": "Comma-separated list of fields to include in the response, using dot notation for nested fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "exclude_fields_comma_separated",
+ "omit_fields_list"
+ ],
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "alternative_names": [
+ "number_of_records",
+ "records_to_return"
+ ],
+ "description": "Specify the number of landing page records to return. Defaults to 10; maximum is 1000.",
+ "endpoint_argument_name": "count"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/landing-pages",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "List landing pages",
+ "description": "Get all landing pages.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postAllLandingPages",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_landing_page",
+ "description": {
+ "tagline": "Create an unpublished Mailchimp landing page.",
+ "detailed": "This tool is used to create a new, unpublished landing page in Mailchimp without any content. It should be called when there's a need to set up a basic landing page framework in Mailchimp."
+ },
+ "return_annotation": "Information about the created landing page.",
+ "arguments": [
+ {
+ "name": "use_account_default_list",
+ "alternative_names": [
+ "default_list_usage",
+ "utilize_default_mailing_list"
+ ],
+ "description": "Set to 'true' to use the account's default list instead of specifying a list_id for the landing page.",
+ "endpoint_argument_name": "use_default_list"
+ },
+ {
+ "name": "landing_page_name",
+ "alternative_names": [
+ "landing_page_title",
+ "page_name"
+ ],
+ "description": "The name of the landing page to be created.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "landing_page_title",
+ "alternative_names": [
+ "page_title",
+ "browser_title"
+ ],
+ "description": "The title that appears in the browser's title bar for the landing page.",
+ "endpoint_argument_name": "title"
+ },
+ {
+ "name": "landing_page_description",
+ "alternative_names": [
+ "page_description",
+ "description_text"
+ ],
+ "description": "Provide a description for the Mailchimp landing page.",
+ "endpoint_argument_name": "description"
+ },
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "associated_store_id",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier of the store linked to this landing page.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "mailchimp_list_id",
+ "alternative_names": [
+ "landing_page_list_id",
+ "associated_list_id"
+ ],
+ "description": "The ID of the Mailchimp list associated with the landing page.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "landing_page_template_type",
+ "alternative_names": [
+ "template_type",
+ "page_template_type"
+ ],
+ "description": "Specifies the template type for the landing page. Options are 'signup' or 'product'.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "landing_page_template_id",
+ "alternative_names": [
+ "page_template_identifier",
+ "landing_page_template_identifier"
+ ],
+ "description": "The integer ID representing the template of the Mailchimp landing page.",
+ "endpoint_argument_name": "template_id"
+ },
+ {
+ "name": "track_with_mailchimp",
+ "alternative_names": [
+ "enable_tracking_with_mailchimp",
+ "enable_mailchimp_tracking"
+ ],
+ "description": "Set to true to use cookies for tracking unique visitors and calculating conversion rates.",
+ "endpoint_argument_name": "tracking.track_with_mailchimp"
+ },
+ {
+ "name": "enable_restricted_data_processing",
+ "alternative_names": [
+ "use_restricted_data_processing",
+ "ccpa_restricted_data_processing"
+ ],
+ "description": "Enable restricted data processing under CCPA for tracking. True ensures compliance with CCPA.",
+ "endpoint_argument_name": "tracking.enable_restricted_data_processing"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/landing-pages",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "Add landing page",
+ "description": "Create an unpublished and contentless Mailchimp landing page.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "use_default_list",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Will create the Landing Page using the account's Default List instead of requiring a list_id."
+ },
+ "description": "Will create the Landing Page using the account's Default List instead of requiring a list_id.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of this landing page."
+ },
+ "description": "The name of this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "title",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "description",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of this landing page."
+ },
+ "description": "The description of this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the store associated with this landing page."
+ },
+ "description": "The ID of the store associated with this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list's ID associated with this landing page."
+ },
+ "description": "The list's ID associated with this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup",
+ "product"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of template the landing page has."
+ },
+ "description": "The type of template the landing page has.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page Template Type",
+ "description": "The type of template the landing page has.",
+ "enum": [
+ "signup",
+ "product"
+ ],
+ "example": "signup"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "template_id",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The template_id of this landing page."
+ },
+ "description": "The template_id of this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Landing Page template_id",
+ "description": "The template_id of this landing page.",
+ "example": 1001
+ },
+ "schema_required": false
+ },
+ {
+ "name": "tracking.track_with_mailchimp",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "tracking.enable_restricted_data_processing",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Landing Page\",\n \"description\": \"A summary of an individual page's properties.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Landing Page Name\",\n \"description\": \"The name of this landing page.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Landing Page title\",\n \"description\": \"The title of this landing page seen in the browser's title bar.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Landing Page description\",\n \"description\": \"The description of this landing page.\"\n },\n \"store_id\": {\n \"type\": \"string\",\n \"title\": \"Store ID\",\n \"description\": \"The ID of the store associated with this landing page.\"\n },\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"Landing Page list id\",\n \"description\": \"The list's ID associated with this landing page.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Landing Page Template Type\",\n \"description\": \"The type of template the landing page has.\",\n \"enum\": [\n \"signup\",\n \"product\"\n ],\n \"example\": \"signup\"\n },\n \"template_id\": {\n \"type\": \"integer\",\n \"title\": \"Landing Page template_id\",\n \"description\": \"The template_id of this landing page.\",\n \"example\": 1001\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Tracking Settings\",\n \"description\": \"The tracking settings applied to this landing page.\",\n \"properties\": {\n \"track_with_mailchimp\": {\n \"type\": \"boolean\",\n \"title\": \"Track with Mailchimp\",\n \"description\": \"Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).\"\n },\n \"enable_restricted_data_processing\": {\n \"type\": \"boolean\",\n \"title\": \"Enable restricted data processing\",\n \"description\": \"Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getLandingPageId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_landing_page_info",
+ "description": {
+ "tagline": "Retrieve information about a specific landing page by ID.",
+ "detailed": "This tool is used to fetch detailed information about a landing page using its ID. It should be called when you need to access the specifics of a given landing page."
+ },
+ "return_annotation": "Information about a specific landing page.",
+ "arguments": [
+ {
+ "name": "landing_page_id",
+ "alternative_names": [
+ "page_unique_id",
+ "landing_page_identifier"
+ ],
+ "description": "The unique identifier for the landing page to retrieve information about.",
+ "endpoint_argument_name": "page_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/landing-pages/{page_id}",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "Get landing page info",
+ "description": "Get information about a specific page.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "page_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "description": "The unique id for the page.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchLandingPageId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_landing_page",
+ "description": {
+ "tagline": "Update a landing page on Mailchimp.",
+ "detailed": "Use this tool to update an existing landing page on Mailchimp. Provide the necessary details for the landing page you wish to update."
+ },
+ "return_annotation": "Details of the updated landing page.",
+ "arguments": [
+ {
+ "name": "landing_page_id",
+ "alternative_names": [
+ "page_identifier",
+ "unique_page_id"
+ ],
+ "description": "The unique ID for the landing page to be updated.",
+ "endpoint_argument_name": "page_id"
+ },
+ {
+ "name": "landing_page_name",
+ "alternative_names": [
+ "page_name",
+ "landing_name"
+ ],
+ "description": "The name for the landing page to be updated.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "landing_page_title",
+ "alternative_names": [
+ "page_title",
+ "browser_title"
+ ],
+ "description": "The title displayed in the browser's title bar for the landing page.",
+ "endpoint_argument_name": "title"
+ },
+ {
+ "name": "landing_page_description",
+ "alternative_names": [
+ "page_description",
+ "description"
+ ],
+ "description": "Provide a description for the landing page. This text summarizes the page's purpose and content.",
+ "endpoint_argument_name": "description"
+ },
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The ID of the store associated with this landing page. It must match an existing store in the Mailchimp account.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "list_id_for_landing_page",
+ "alternative_names": [
+ "landing_page_list_id",
+ "associated_list_id"
+ ],
+ "description": "The ID of the list associated with this landing page.",
+ "endpoint_argument_name": "list_id"
+ },
+ {
+ "name": "enable_tracking_with_mailchimp",
+ "alternative_names": [
+ "track_visitors_with_cookies",
+ "enable_conversion_tracking"
+ ],
+ "description": "Enable cookie tracking to monitor unique visitors and calculate conversion rates. More info: [here](https://mailchimp.com/help/use-track-mailchimp/).",
+ "endpoint_argument_name": "tracking.track_with_mailchimp"
+ },
+ {
+ "name": "enable_restricted_data_processing",
+ "alternative_names": [
+ "restrict_data_processing",
+ "ccpa_compliant_processing"
+ ],
+ "description": "Set to true to enable Google\u2019s restricted data processing in compliance with the CCPA for this landing page.",
+ "endpoint_argument_name": "tracking.enable_restricted_data_processing"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/landing-pages/{page_id}",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "Update landing page",
+ "description": "Update a landing page.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "page_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "description": "The unique id for the page.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of this landing page."
+ },
+ "description": "The name of this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "title",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "description",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of this landing page."
+ },
+ "description": "The description of this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the store associated with this landing page."
+ },
+ "description": "The ID of the store associated with this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list's ID associated with this landing page."
+ },
+ "description": "The list's ID associated with this landing page.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "tracking.track_with_mailchimp",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "tracking.enable_restricted_data_processing",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Landing Page\",\n \"description\": \"A summary of an individual page's properties.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Landing Page Name\",\n \"description\": \"The name of this landing page.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Landing Page title\",\n \"description\": \"The title of this landing page seen in the browser's title bar.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Landing Page description\",\n \"description\": \"The description of this landing page.\"\n },\n \"store_id\": {\n \"type\": \"string\",\n \"title\": \"Store ID\",\n \"description\": \"The ID of the store associated with this landing page.\"\n },\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"Landing Page list id\",\n \"description\": \"The list's ID associated with this landing page.\"\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Tracking Settings\",\n \"description\": \"The tracking settings applied to this landing page.\",\n \"properties\": {\n \"track_with_mailchimp\": {\n \"type\": \"boolean\",\n \"title\": \"Track with Mailchimp\",\n \"description\": \"Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).\"\n },\n \"enable_restricted_data_processing\": {\n \"type\": \"boolean\",\n \"title\": \"Enable restricted data processing\",\n \"description\": \"Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteLandingPageId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_landing_page",
+ "description": {
+ "tagline": "Delete a specified landing page.",
+ "detailed": "Use this tool to delete a landing page by providing its ID. Ideal for managing or updating landing pages by removing outdated or unnecessary ones."
+ },
+ "return_annotation": "Confirmation of landing page deletion.",
+ "arguments": [
+ {
+ "name": "landing_page_id",
+ "alternative_names": [
+ "page_identifier",
+ "landing_page_identifier"
+ ],
+ "description": "The unique ID for the landing page to be deleted.",
+ "endpoint_argument_name": "page_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/landing-pages/{page_id}",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "Delete landing page",
+ "description": "Delete a landing page.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "page_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "description": "The unique id for the page.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postLandingPageIdActionsPublish",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "publish_landing_page",
+ "description": {
+ "tagline": "Publishes a landing page from draft or edited state.",
+ "detailed": "Use this tool to publish a landing page that is currently in draft, unpublished, or has been edited after a previous publication."
+ },
+ "return_annotation": "Confirms publication of the landing page.",
+ "arguments": [
+ {
+ "name": "landing_page_id",
+ "alternative_names": [
+ "page_identifier",
+ "publish_page_id"
+ ],
+ "description": "The unique identifier for the landing page to publish.",
+ "endpoint_argument_name": "page_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/landing-pages/{page_id}/actions/publish",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "Publish landing page",
+ "description": "Publish a landing page that is in draft, unpublished, or has been previously published and edited.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "page_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "description": "The unique id for the page.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postLandingPageIdActionsUnpublish",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "unpublish_landing_page",
+ "description": {
+ "tagline": "Unpublish a draft or published landing page.",
+ "detailed": "Used to unpublish a landing page that is currently in draft or has been published on Mailchimp. This can be useful for managing the visibility of a page."
+ },
+ "return_annotation": "Confirmation of the landing page being unpublished.",
+ "arguments": [
+ {
+ "name": "landing_page_id",
+ "alternative_names": [
+ "page_identifier",
+ "landing_page_unique_id"
+ ],
+ "description": "The unique ID of the landing page to be unpublished. Required for identifying the specific page on Mailchimp.",
+ "endpoint_argument_name": "page_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/landing-pages/{page_id}/actions/unpublish",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "Unpublish landing page",
+ "description": "Unpublish a landing page that is in draft or has been published.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "page_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "description": "The unique id for the page.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getLandingPageIdContent",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_landing_page_html",
+ "description": {
+ "tagline": "Retrieve the HTML content of a Mailchimp landing page.",
+ "detailed": ""
+ },
+ "return_annotation": "HTML content of the landing page.",
+ "arguments": [
+ {
+ "name": "landing_page_id",
+ "alternative_names": [
+ "page_identifier",
+ "page_unique_id"
+ ],
+ "description": "The unique identifier for the Mailchimp landing page to retrieve.",
+ "endpoint_argument_name": "page_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields_list",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for nested objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/landing-pages/{page_id}/content",
+ "tags": [
+ "landingPages"
+ ],
+ "summary": "Get landing page content",
+ "description": "Get the the HTML for your landing page.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "page_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "description": "The unique id for the page.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReports",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_reports",
+ "description": {
+ "tagline": "Retrieve detailed campaign reports from Mailchimp.",
+ "detailed": "This tool retrieves campaign performance reports from Mailchimp Marketing. It should be called when detailed analytics about email campaigns are needed, such as open rates, click rates, and other metrics."
+ },
+ "return_annotation": "Campaign reports data.",
+ "arguments": [
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "report_fields"
+ ],
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "exclude_report_fields",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "total_records"
+ ],
+ "description": "Specify the number of records to return, ranging from 10 to 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_after"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "campaign_type",
+ "alternative_names": [
+ "type_of_campaign",
+ "campaign_category"
+ ],
+ "description": "Specify the type of campaign to retrieve reports for. Valid options are dependent on Mailchimp's supported campaign types.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "restrict_to_campaigns_sent_before",
+ "alternative_names": [
+ "end_time_filter",
+ "limit_to_before_date"
+ ],
+ "description": "Restrict response to campaigns sent before this ISO 8601 time format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "before_send_time"
+ },
+ {
+ "name": "restrict_to_campaigns_sent_after",
+ "alternative_names": [
+ "limit_to_campaigns_after",
+ "campaigns_after_date"
+ ],
+ "description": "Restrict the response to campaigns sent after the specified ISO 8601 date and time.",
+ "endpoint_argument_name": "since_send_time"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List campaign reports",
+ "description": "Get campaign reports.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign type."
+ },
+ "description": "The campaign type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_send_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_send_time",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_report_details",
+ "description": {
+ "tagline": "Retrieve detailed report for a specific sent campaign.",
+ "detailed": "Use this tool to access the report details of a specific campaign that has been sent. It provides insights and metrics for evaluating the campaign's performance."
+ },
+ "return_annotation": "Details of the specified sent campaign report.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_tool"
+ ],
+ "description": "The unique ID for the campaign to retrieve its report details.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "include_fields"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "skip_fields_list"
+ ],
+ "description": "Comma-separated list of fields to be excluded from the response. Use dot notation for sub-object references.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get campaign report",
+ "description": "Get report details for a specific sent campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdAbuseReportsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_abuse_reports",
+ "description": {
+ "tagline": "Get a list of abuse complaints for a specific campaign.",
+ "detailed": "Call this tool to retrieve and review all abuse complaints related to a particular email marketing campaign. Useful for tracking and managing issues with campaign recipients reporting spam or other abuses."
+ },
+ "return_annotation": "List of abuse complaints for the specified campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_code"
+ ],
+ "description": "The unique identifier for the email marketing campaign to fetch abuse complaints.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "selected_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for nested fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude in the response using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/abuse-reports",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List abuse reports",
+ "description": "Get a list of abuse complaints for a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdAbuseReportsIdId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_abuse_report_details",
+ "description": {
+ "tagline": "Retrieve details of an abuse report for a campaign.",
+ "detailed": "Use this tool to get information about a specific abuse report related to a campaign. It should be called when detailed information about an abuse report is required for analysis or record-keeping."
+ },
+ "return_annotation": "Details of a specific abuse report for a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_number"
+ ],
+ "description": "The unique identifier for the campaign to fetch the abuse report details.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "abuse_report_id",
+ "alternative_names": [
+ "report_identifier",
+ "abuse_report_identifier"
+ ],
+ "description": "The unique identifier for the abuse report. This ID is necessary to retrieve the specific report details.",
+ "endpoint_argument_name": "report_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "select_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/abuse-reports/{report_id}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get abuse report",
+ "description": "Get information about a specific abuse report for a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "report_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the abuse report."
+ },
+ "description": "The id for the abuse report.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdAdvice",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_advice_feedback",
+ "description": {
+ "tagline": "Get feedback based on a campaign's performance data.",
+ "detailed": "This tool provides advice and feedback derived from various campaign statistics, such as open rates, click-through rates, unsubscribes, and bounces. Use it to gain insights into campaign effectiveness and areas for improvement."
+ },
+ "return_annotation": "Feedback and insights based on campaign statistics.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_unique_id"
+ ],
+ "description": "The unique identifier for the campaign to get advice feedback on.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "return_fields",
+ "selected_fields"
+ ],
+ "description": "Comma-separated fields to include in the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "alternative_names": [
+ "omit_fields_from_response",
+ "skip_fields_in_output"
+ ],
+ "description": "A comma-separated list of fields to omit in the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/advice",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List campaign feedback",
+ "description": "Get feedback based on a campaign's statistics. Advice feedback is based on campaign stats like opens, clicks, unsubscribes, bounces, and more.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdClickDetails",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_click_details",
+ "description": {
+ "tagline": "Get details about link clicks in Mailchimp campaigns.",
+ "detailed": "Use this tool to obtain detailed information about clicks on specific links in your Mailchimp marketing campaigns. It helps analyze the engagement by providing insights into which links were clicked and how often."
+ },
+ "return_annotation": "Information about clicks on specific links in a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id_value",
+ "unique_campaign_identifier"
+ ],
+ "description": "The unique identifier for a specific Mailchimp campaign. Required to fetch corresponding click details.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "output_fields",
+ "include_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_data_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "return_limit"
+ ],
+ "description": "Specify the number of click records to return. The default is 10, and the maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_count",
+ "start_record_index"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "sort_by_field",
+ "alternative_names": [
+ "order_by_field",
+ "field_sort"
+ ],
+ "description": "Specify the field to sort click reports by, such as 'clicks', 'unique_clicks', or 'link_name'.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_direction",
+ "alternative_names": [
+ "order_direction",
+ "sorting_order"
+ ],
+ "description": "Determines the order direction for sorted results, such as ascending or descending.",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/click-details",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List campaign details",
+ "description": "Get information about clicks on specific links in your Mailchimp campaigns.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns click reports sorted by the specified field."
+ },
+ "description": "Returns click reports sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdClickDetailsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_link_click_details",
+ "description": {
+ "tagline": "Get click details for a specific campaign link.",
+ "detailed": "Fetch detailed click information for a specific link within a Mailchimp campaign report. Useful for analyzing link engagement."
+ },
+ "return_annotation": "Details about clicks for a specific link in a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "unique_campaign_id"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign to fetch link click details.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "link_identifier",
+ "alternative_names": [
+ "link_reference_id",
+ "url_click_id"
+ ],
+ "description": "The unique identifier for the link whose click details are to be retrieved in the campaign report.",
+ "endpoint_argument_name": "link_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "return_fields",
+ "fields_to_include"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "excluded_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/click-details/{link_id}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get campaign link details",
+ "description": "Get click details for a specific link in a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "link_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "description": "The id for the link.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdClickDetailsIdMembers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "fetch_click_details_for_campaign",
+ "description": {
+ "tagline": "Retrieve details on members who clicked a specific campaign link.",
+ "detailed": "This tool retrieves information about list members who clicked on a specific link in an email marketing campaign. It should be called when you need insights into which members interacted with a particular link within a campaign."
+ },
+ "return_annotation": "Information about list members who clicked a specific link in a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "unique_campaign_id"
+ ],
+ "description": "A unique identifier for the email marketing campaign to retrieve click details.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "link_identifier",
+ "alternative_names": [
+ "link_id_reference",
+ "link_id_value"
+ ],
+ "description": "The unique identifier for the specific link in the campaign. This ID is used to retrieve details of list members who clicked the link.",
+ "endpoint_argument_name": "link_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "fields_comma_separated"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for nested fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields",
+ "fields_not_included"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "alternative_names": [
+ "number_of_records",
+ "records_to_return"
+ ],
+ "description": "The number of member records to return. Default is 10 and the maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_to_skip",
+ "start_position"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/click-details/{link_id}/members",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List clicked link subscribers",
+ "description": "Get information about list members who clicked on a specific link in a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "link_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "description": "The id for the link.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdClickDetailsIdMembersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_subscriber_click_details",
+ "description": {
+ "tagline": "Retrieve details of a subscriber's link click in a campaign.",
+ "detailed": "This tool fetches information about a specific subscriber who clicked a link within a specific campaign in Mailchimp. It should be called when you need to analyze subscriber engagement by retrieving who clicked on which links in a campaign."
+ },
+ "return_annotation": "Details about a subscriber's link click in a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_unique_id"
+ ],
+ "description": "The unique identifier for the campaign to get subscriber click details.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "link_identifier",
+ "alternative_names": [
+ "link_id_value",
+ "identifier_for_link"
+ ],
+ "description": "The unique ID for the link clicked within a campaign. Use to specify which link's click details to retrieve.",
+ "endpoint_argument_name": "link_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "alternative_names": [
+ "email_hash",
+ "subscriber_hash_value"
+ ],
+ "description": "The MD5 hash of the lowercase version of the subscriber's email address.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "returned_fields"
+ ],
+ "description": "A comma-separated list of specific fields to include in the response. Use dot notation for nested objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "fields_to_exclude"
+ ],
+ "description": "Comma-separated list of fields to exclude from the result, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/click-details/{link_id}/members/{subscriber_hash}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get clicked link subscriber",
+ "description": "Get information about a specific subscriber who clicked a link in a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "link_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "description": "The id for the link.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdOpenDetails",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_open_details",
+ "description": {
+ "tagline": "Get details on opened campaign emails by list members.",
+ "detailed": "Use this tool to retrieve detailed information about emails from a specific campaign that were opened by list members. Ideal for understanding engagement and assessing campaign performance."
+ },
+ "return_annotation": "Detailed information about opened campaign emails.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_code"
+ ],
+ "description": "The unique identifier for the campaign. Required to retrieve open details for specific campaign emails.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "alternative_names": [
+ "omit_fields_from_response",
+ "skip_fields_in_result"
+ ],
+ "description": "Comma-separated fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_to_return",
+ "record_count"
+ ],
+ "description": "Specify the number of records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_to_skip",
+ "pagination_skip"
+ ],
+ "description": "The number of records from the collection to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "start_date_time_for_campaign_open_events",
+ "alternative_names": [
+ "begin_time_for_campaign_opens",
+ "open_event_start_time"
+ ],
+ "description": "Restrict results to campaign open events that occur after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since"
+ },
+ {
+ "name": "sort_by_field",
+ "alternative_names": [
+ "order_by_field",
+ "field_sorting"
+ ],
+ "description": "Specify the field by which to sort the open reports. Choose from available fields to determine the order of results.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "order_direction",
+ "results_sort_direction"
+ ],
+ "description": "Specify the order direction for sorted results. Use 'asc' for ascending or 'desc' for descending.",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/open-details",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List campaign open details",
+ "description": "Get detailed information about any campaign emails that were opened by a list member.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to campaign open events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to campaign open events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns open reports sorted by the specified field."
+ },
+ "description": "Returns open reports sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdOpenDetailsIdMembersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_subscriber_open_details",
+ "description": {
+ "tagline": "Retrieve details of a subscriber who opened a campaign.",
+ "detailed": "This tool fetches information about a specific subscriber who opened a given email campaign. It is useful for tracking engagement and understanding subscriber behavior in email marketing campaigns."
+ },
+ "return_annotation": "Information about a specific campaign subscriber who opened it.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_value"
+ ],
+ "description": "The unique identifier for the campaign to retrieve subscriber open details.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "alternative_names": [
+ "email_md5_hash",
+ "list_member_hash"
+ ],
+ "description": "The MD5 hash of the lowercase version of the subscriber's email address.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "fields_selection"
+ ],
+ "description": "A comma-separated list of fields to return for the subscriber's open details. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "alternative_names": [
+ "omit_fields_in_result",
+ "skip_fields_in_output"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/open-details/{subscriber_hash}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get opened campaign subscriber",
+ "description": "Get information about a specific subscriber who opened a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdDomainPerformance",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_domain_performance",
+ "description": {
+ "tagline": "Get top domain performance for an email campaign.",
+ "detailed": "Retrieve statistics on how email domains have performed in a specific campaign using the campaign ID."
+ },
+ "return_annotation": "Statistics for top-performing email domains in a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id_string",
+ "campaign_identifier"
+ ],
+ "description": "The unique identifier for the email campaign to retrieve domain performance statistics.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "included_fields",
+ "fields_selection"
+ ],
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_report",
+ "alternative_names": [
+ "omit_fields_from_report",
+ "skip_fields_in_report"
+ ],
+ "description": "Comma-separated list of fields to exclude from the report, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/domain-performance",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List domain performance stats",
+ "description": "Get statistics for the top-performing email domains in a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdEepurl",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_social_activity",
+ "description": {
+ "tagline": "Get social activity summary for a campaign using EepURL.",
+ "detailed": "Use this tool to retrieve a summary of social activity tracked by EepURL for a specific campaign in Mailchimp."
+ },
+ "return_annotation": "Summary of social activity for the campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "unique_campaign_id"
+ ],
+ "description": "The unique id for the campaign to retrieve its social activity summary.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_specific_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/eepurl",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List EepURL activity",
+ "description": "Get a summary of social activity for the campaign, tracked by EepURL.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdEmailActivity",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "retrieve_campaign_subscriber_activity",
+ "description": {
+ "tagline": "Retrieve subscriber activity for a specific campaign.",
+ "detailed": "Use this tool to get a list of subscriber activities for a particular email campaign in Mailchimp. It provides information on how subscribers interacted with the campaign emails."
+ },
+ "return_annotation": "List of subscriber activities in a specific campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "unique_campaign_id",
+ "email_campaign_id"
+ ],
+ "description": "The unique identifier for a specific email campaign.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "fields_not_to_return",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "results_limit",
+ "records_count"
+ ],
+ "description": "Specifies how many records to return. The default is 10, with a maximum of 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "records_offset"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "activity_since_timestamp",
+ "alternative_names": [
+ "email_activity_after",
+ "subscriber_activity_from"
+ ],
+ "description": "Restrict results to email activity events occurring after this timestamp, using ISO 8601 format.",
+ "endpoint_argument_name": "since"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/email-activity",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List email activity",
+ "description": "Get a list of member's subscriber activity in a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdEmailActivityId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_email_activity",
+ "description": {
+ "tagline": "Retrieve specific list member's activity in a campaign.",
+ "detailed": "Get detailed information on a list member's activity in a campaign, including opens, clicks, and bounces, by providing the campaign ID and subscriber hash."
+ },
+ "return_annotation": "Detailed email activity for a specific campaign member.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_string"
+ ],
+ "description": "The unique identifier for the campaign whose member activity is being retrieved.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "subscriber_hash",
+ "alternative_names": [
+ "member_hash",
+ "subscriber_id_hash"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address for which you want to retrieve activity.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "output_fields",
+ "response_fields"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "restrict_activity_since",
+ "alternative_names": [
+ "limit_results_from_date",
+ "filter_activity_starting_at"
+ ],
+ "description": "Restrict results to email activity events occurring after this time (ISO 8601 format).",
+ "endpoint_argument_name": "since"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/email-activity/{subscriber_hash}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get subscriber email activity",
+ "description": "Get a specific list member's activity in a campaign including opens, clicks, and bounces.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdLocations",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "fetch_campaign_open_locations",
+ "description": {
+ "tagline": "Retrieve top open locations for a specific campaign.",
+ "detailed": "Use this tool to obtain the top geographical locations where a marketing campaign was opened. This can help in analyzing the reach and engagement of the campaign in different regions."
+ },
+ "return_annotation": "Top locations where a campaign was opened.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_value"
+ ],
+ "description": "The unique identifier for the specific marketing campaign.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "returned_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_specific_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "alternative_names": [
+ "records_count",
+ "number_returned"
+ ],
+ "description": "Specify the number of location records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "records_to_skip",
+ "alternative_names": [
+ "skip_number_of_records",
+ "pagination_offset"
+ ],
+ "description": "Number of records to skip for pagination purposes. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/locations",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List top open activities",
+ "description": "Get top open locations for a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdSentTo",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_recipients",
+ "description": {
+ "tagline": "Retrieve information about campaign recipients.",
+ "detailed": "Use this tool to obtain detailed information about recipients of a specific marketing campaign. It provides insights into who received the campaign."
+ },
+ "return_annotation": "Details of campaign recipients.",
+ "arguments": [
+ {
+ "name": "campaign_unique_identifier",
+ "alternative_names": [
+ "campaign_id_reference",
+ "campaign_key"
+ ],
+ "description": "The unique identifier for the specific campaign whose recipients you want to retrieve.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "requested_fields"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "record_count",
+ "return_records_count"
+ ],
+ "description": "Specify the number of recipient records to return, between 1 and 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_index"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/sent-to",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List campaign recipients",
+ "description": "Get information about campaign recipients.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdSentToId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_recipient_info",
+ "description": {
+ "tagline": "Get information about a specific campaign recipient.",
+ "detailed": "Use this tool to retrieve details about a particular recipient of a Mailchimp marketing campaign. Provide the campaign ID and subscriber hash to access the information."
+ },
+ "return_annotation": "Information about a specific campaign recipient.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_value"
+ ],
+ "description": "The unique ID for the campaign for which recipient information is requested. It should be in string format and is required to identify the specific campaign.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "recipient_subscriber_hash",
+ "alternative_names": [
+ "subscriber_identifier_hash",
+ "email_md5_hash"
+ ],
+ "description": "MD5 hash of the lowercase version of the recipient's email address.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "include_fields",
+ "fields_list"
+ ],
+ "description": "Comma-separated fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "excluded_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/sent-to/{subscriber_hash}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get campaign recipient info",
+ "description": "Get information about a specific campaign recipient.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdSubReportsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_sub_reports",
+ "description": {
+ "tagline": "Retrieve sub-reports of a specific parent campaign.",
+ "detailed": "Use this tool to get the reports of child campaigns associated with a particular parent campaign in Mailchimp. Useful for analyzing the performance of linked campaigns."
+ },
+ "return_annotation": "List of sub-reports for a specific parent campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "parent_campaign_id",
+ "main_campaign_identifier"
+ ],
+ "description": "The unique ID of the parent campaign to retrieve sub-reports for.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "fields_to_include",
+ "selected_fields"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/sub-reports",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List child campaign reports",
+ "description": "Get a list of reports with child campaigns for a specific parent campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdUnsubscribed",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_unsubscribed_campaign_members",
+ "description": {
+ "tagline": "Get details of members unsubscribed from a specific campaign.",
+ "detailed": "Use this tool to retrieve detailed information about members who have unsubscribed from a specified marketing campaign."
+ },
+ "return_annotation": "Information about members unsubscribed from a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_id_value"
+ ],
+ "description": "The unique identifier for the marketing campaign to retrieve unsubscribed members information.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "excluded_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "results_limit"
+ ],
+ "description": "Specify the number of records to return. Default is 10 and maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_skip_count",
+ "collection_offset"
+ ],
+ "description": "The number of records to skip for pagination, with a default value of 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/unsubscribed",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List unsubscribed members",
+ "description": "Get information about members who have unsubscribed from a specific campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdUnsubscribedId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_unsubscribed_member_info",
+ "description": {
+ "tagline": "Retrieve info on an unsubscribed list member from a campaign.",
+ "detailed": "Use this tool to get information about a specific list member who has unsubscribed from a campaign in Mailchimp."
+ },
+ "return_annotation": "Details about an unsubscribed list member from a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_identifier",
+ "campaign_reference_id"
+ ],
+ "description": "The unique identifier for the Mailchimp campaign.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "alternative_names": [
+ "email_md5_hash",
+ "member_hash"
+ ],
+ "description": "The MD5 hash of the lowercase version of the list member's email address for identification.",
+ "endpoint_argument_name": "subscriber_hash"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "return_fields",
+ "fields_to_include"
+ ],
+ "description": "Specify which fields to return, using a comma-separated list with dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "exclude_fields_csv"
+ ],
+ "description": "A list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/unsubscribed/{subscriber_hash}",
+ "tags": [
+ "reports"
+ ],
+ "summary": "Get unsubscribed member",
+ "description": "Get information about a specific list member who unsubscribed from a campaign.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "subscriber_hash",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportsIdEcommerceProductActivity",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_campaign_product_activity",
+ "description": {
+ "tagline": "Get breakdown of product activity for a campaign.",
+ "detailed": "This tool retrieves the breakdown of product activity related to a specific marketing campaign from Mailchimp. It should be called when detailed ecommerce product performance data for a campaign is needed."
+ },
+ "return_annotation": "Breakdown of product activity for a campaign.",
+ "arguments": [
+ {
+ "name": "campaign_unique_id",
+ "alternative_names": [
+ "campaign_id_value",
+ "unique_campaign_identifier"
+ ],
+ "description": "The unique identifier for the campaign whose product activity is being retrieved.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "return_fields",
+ "fields_list"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_to_fetch",
+ "record_limit"
+ ],
+ "description": "The number of records to return, between 1 and 1000. Defaults to 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_offset",
+ "skip_records"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "sort_results_by_field",
+ "alternative_names": [
+ "order_by_field",
+ "sort_by_field"
+ ],
+ "description": "Specify the field by which to sort the product activity results. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "sort_field"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reports/{campaign_id}/ecommerce-product-activity",
+ "tags": [
+ "reports"
+ ],
+ "summary": "List campaign product activity",
+ "description": "Get breakdown of product activity for a campaign",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "description": "The unique id for the campaign.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getTemplates",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_available_templates",
+ "description": {
+ "tagline": "Retrieve a list of available email templates.",
+ "detailed": "Fetches and returns a list of all the email templates available in a Mailchimp account. Useful for managing and selecting templates for campaigns."
+ },
+ "return_annotation": "List of available email templates.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "fields_list"
+ ],
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields",
+ "fields_to_exclude"
+ ],
+ "description": "Comma-separated fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "template_count",
+ "records_count"
+ ],
+ "description": "Specify the number of template records to return (1-1000). Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_from_record"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0. Use for paginated responses.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "template_creator_user",
+ "alternative_names": [
+ "template_created_by",
+ "creator_account_user"
+ ],
+ "description": "Specify the Mailchimp account user who created the template to filter results.",
+ "endpoint_argument_name": "created_by"
+ },
+ {
+ "name": "created_after_date",
+ "alternative_names": [
+ "after_creation_date",
+ "created_since_date"
+ ],
+ "description": "Retrieve templates created after a specific date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "endpoint_argument_name": "since_date_created"
+ },
+ {
+ "name": "restrict_before_date_created",
+ "alternative_names": [
+ "limit_before_creation",
+ "filter_by_creation_date_before"
+ ],
+ "description": "Restrict the response to templates created before the specified date in ISO 8601 format. For example: 2015-10-21T15:41:36+00:00.",
+ "endpoint_argument_name": "before_date_created"
+ },
+ {
+ "name": "template_type",
+ "alternative_names": [
+ "template_type_filter",
+ "limit_by_template_type"
+ ],
+ "description": "Specify the template type to limit the results. This filters the email templates based on their type.",
+ "endpoint_argument_name": "type"
+ },
+ {
+ "name": "filter_by_category",
+ "alternative_names": [
+ "by_category",
+ "category_filter"
+ ],
+ "description": "Limit the results to templates that match a specific category.",
+ "endpoint_argument_name": "category"
+ },
+ {
+ "name": "template_folder_id",
+ "alternative_names": [
+ "folder_identifier",
+ "template_folder_identifier"
+ ],
+ "description": "The unique ID for the folder containing templates to retrieve.",
+ "endpoint_argument_name": "folder_id"
+ },
+ {
+ "name": "sort_templates_by_field",
+ "alternative_names": [
+ "order_templates_by_field",
+ "template_sort_field"
+ ],
+ "description": "Specify the field to sort templates by. Determines the sorting order of returned templates.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "template_content_type",
+ "alternative_names": [
+ "content_format_type",
+ "template_structure_type"
+ ],
+ "description": "Filter templates based on content structure. Use 'template' for legacy, 'multichannel' for new editor, or 'html' for code your own.",
+ "endpoint_argument_name": "content_type"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "sorting_direction",
+ "order_direction"
+ ],
+ "description": "Specify the order direction for sorted results ('asc' for ascending, 'desc' for descending).",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/templates",
+ "tags": [
+ "templates"
+ ],
+ "summary": "List templates",
+ "description": "Get a list of an account's available templates.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "created_by",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the template."
+ },
+ "description": "The Mailchimp account user who created the template.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "since_date_created",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to templates created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to templates created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "before_date_created",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to templates created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "description": "Restrict the response to templates created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on template type."
+ },
+ "description": "Limit results based on template type.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "category",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on category."
+ },
+ "description": "Limit results based on category.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique folder id."
+ },
+ "description": "The unique folder id.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns user templates sorted by the specified field."
+ },
+ "description": "Returns user templates sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "content_type",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on how the template's content is put together. Only templates of type `user` can be filtered by `content_type`. If you want to retrieve saved templates created with the legacy email editor, then filter `content_type` to `template`. If you'd rather pull your saved templates for the new editor, filter to `multichannel`. For code your own templates, filter to `html`."
+ },
+ "description": "Limit results based on how the template's content is put together. Only templates of type `user` can be filtered by `content_type`. If you want to retrieve saved templates created with the legacy email editor, then filter `content_type` to `template`. If you'd rather pull your saved templates for the new editor, filter to `multichannel`. For code your own templates, filter to `html`.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postTemplates",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "create_mailchimp_template",
+ "description": {
+ "tagline": "Create a new Classic template in Mailchimp.",
+ "detailed": "This tool is used to create a new Classic template in a Mailchimp account. It should be called when a user wants to add a new email template for marketing purposes."
+ },
+ "return_annotation": "Confirmation of the new template creation.",
+ "arguments": [
+ {
+ "name": "template_name",
+ "alternative_names": [
+ "name_of_template",
+ "template_label"
+ ],
+ "description": "The name assigned to the new template. It should be descriptive for easy identification.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "template_html_content",
+ "alternative_names": [
+ "html_content",
+ "email_template_html"
+ ],
+ "description": "The raw HTML content for the template, supporting Mailchimp Template Language.",
+ "endpoint_argument_name": "html"
+ },
+ {
+ "name": "template_folder_id",
+ "alternative_names": [
+ "folder_id_for_template",
+ "template_directory_id"
+ ],
+ "description": "The ID of the folder where the template will be stored. Ensure the folder exists in the Mailchimp account.",
+ "endpoint_argument_name": "folder_id"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/templates",
+ "tags": [
+ "templates"
+ ],
+ "summary": "Add template",
+ "description": "Create a new template for the account. Only Classic templates are supported.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the template."
+ },
+ "description": "The name of the template.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template.",
+ "example": "Freddie's Jokes"
+ },
+ "schema_required": true
+ },
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder the template is currently in."
+ },
+ "description": "The id of the folder the template is currently in.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in.",
+ "example": "a4b830b"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "html",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Template HTML",
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Instance\",\n \"description\": \"Information about a specific template.\",\n \"required\": [\n \"name\",\n \"html\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Template Name\",\n \"description\": \"The name of the template.\",\n \"example\": \"Freddie's Jokes\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder the template is currently in.\",\n \"example\": \"a4b830b\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Template HTML\",\n \"description\": \"The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getTemplatesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_mailchimp_template_info",
+ "description": {
+ "tagline": "Retrieves detailed information about a specific Mailchimp template.",
+ "detailed": "Use this tool to obtain information about a particular template in Mailchimp by providing the template ID. It is useful for retrieving template details when managing email marketing campaigns."
+ },
+ "return_annotation": "Information about a specific Mailchimp template.",
+ "arguments": [
+ {
+ "name": "template_id",
+ "alternative_names": [
+ "template_identifier",
+ "id_of_template"
+ ],
+ "description": "The unique identifier for the Mailchimp template to retrieve information about.",
+ "endpoint_argument_name": "template_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "desired_fields"
+ ],
+ "description": "Specify a comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "exclude_template_fields",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/templates/{template_id}",
+ "tags": [
+ "templates"
+ ],
+ "summary": "Get template info",
+ "description": "Get information about a specific template.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "template_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "description": "The unique id for the template.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchTemplatesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_email_template",
+ "description": {
+ "tagline": "Update the details of an existing email template.",
+ "detailed": "Use this tool to update the name, HTML content, or folder ID of an existing email template in Mailchimp."
+ },
+ "return_annotation": "Provides confirmation of template update status.",
+ "arguments": [
+ {
+ "name": "template_unique_id",
+ "alternative_names": [
+ "template_id_code",
+ "unique_template_identifier"
+ ],
+ "description": "The unique identifier for the email template to be updated.",
+ "endpoint_argument_name": "template_id"
+ },
+ {
+ "name": "template_name",
+ "alternative_names": [
+ "email_template_name",
+ "template_title"
+ ],
+ "description": "The name of the email template to update.",
+ "endpoint_argument_name": "name"
+ },
+ {
+ "name": "template_html_content",
+ "alternative_names": [
+ "email_template_html",
+ "html_content"
+ ],
+ "description": "The raw HTML for the template using Mailchimp's Template Language.",
+ "endpoint_argument_name": "html"
+ },
+ {
+ "name": "destination_folder_id",
+ "alternative_names": [
+ "template_folder_id",
+ "current_folder_id"
+ ],
+ "description": "The ID of the folder where the template is currently located.",
+ "endpoint_argument_name": "folder_id"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/templates/{template_id}",
+ "tags": [
+ "templates"
+ ],
+ "summary": "Update template",
+ "description": "Update the name, HTML, or `folder_id` of an existing template.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "template_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "description": "The unique id for the template.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the template."
+ },
+ "description": "The name of the template.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template.",
+ "example": "Freddie's Jokes"
+ },
+ "schema_required": true
+ },
+ {
+ "name": "folder_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder the template is currently in."
+ },
+ "description": "The id of the folder the template is currently in.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in.",
+ "example": "a4b830b"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "html",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Template HTML",
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Instance\",\n \"description\": \"Information about a specific template.\",\n \"required\": [\n \"name\",\n \"html\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Template Name\",\n \"description\": \"The name of the template.\",\n \"example\": \"Freddie's Jokes\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder the template is currently in.\",\n \"example\": \"a4b830b\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Template HTML\",\n \"description\": \"The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteTemplatesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_email_template",
+ "description": {
+ "tagline": "Delete a specific email template in Mailchimp.",
+ "detailed": ""
+ },
+ "return_annotation": "Confirmation of template deletion.",
+ "arguments": [
+ {
+ "name": "template_unique_id",
+ "alternative_names": [
+ "email_template_id",
+ "marketing_template_unique_id"
+ ],
+ "description": "The unique identifier for the email template to be deleted in Mailchimp.",
+ "endpoint_argument_name": "template_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/templates/{template_id}",
+ "tags": [
+ "templates"
+ ],
+ "summary": "Delete template",
+ "description": "Delete a specific template.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "template_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "description": "The unique id for the template.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getTemplatesIdDefaultContent",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_template_editable_sections",
+ "description": {
+ "tagline": "Retrieve editable sections and default content of a template.",
+ "detailed": "Use this tool to get the sections you can edit in a Mailchimp template, along with each section's default content. It is helpful for understanding which parts of a template can be customized."
+ },
+ "return_annotation": "Editable sections and their default content from a template.",
+ "arguments": [
+ {
+ "name": "template_unique_id",
+ "alternative_names": [
+ "template_id_value",
+ "template_identifier"
+ ],
+ "description": "The unique identifier for the Mailchimp template to retrieve editable sections.",
+ "endpoint_argument_name": "template_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "included_fields",
+ "fields_list"
+ ],
+ "description": "Comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/templates/{template_id}/default-content",
+ "tags": [
+ "templates"
+ ],
+ "summary": "View default content",
+ "description": "Get the sections that you can edit in a template, including each section's default content.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "template_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "description": "The unique id for the template.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceOrders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_account_orders",
+ "description": {
+ "tagline": "Retrieve information about an account's ecommerce orders.",
+ "detailed": "Get details on all orders associated with a specific account, including order history and status."
+ },
+ "return_annotation": "Information about an account's ecommerce orders.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_order_fields",
+ "alternative_names": [
+ "omit_order_fields",
+ "exclude_order_information_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "record_count",
+ "limit_records"
+ ],
+ "description": "Specify the number of order records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_count",
+ "start_at_record"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "restrict_to_campaign_id",
+ "alternative_names": [
+ "filter_by_campaign_id",
+ "limit_by_campaign_id"
+ ],
+ "description": "Restrict results to orders with a specific campaign ID value.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "filter_by_outreach_id",
+ "alternative_names": [
+ "restrict_by_outreach_id",
+ "specific_outreach_id"
+ ],
+ "description": "Return orders associated with the specified outreach_id.",
+ "endpoint_argument_name": "outreach_id"
+ },
+ {
+ "name": "specific_customer_id",
+ "alternative_names": [
+ "customer_identifier",
+ "client_id_filter"
+ ],
+ "description": "Restrict results to orders made by a specific customer using their unique customer ID.",
+ "endpoint_argument_name": "customer_id"
+ },
+ {
+ "name": "restrict_to_outreach_orders",
+ "alternative_names": [
+ "filter_outreach_orders",
+ "include_only_outreach_orders"
+ ],
+ "description": "Restrict results to orders that have an outreach attached, such as an email campaign or Facebook ad.",
+ "endpoint_argument_name": "has_outreach"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/orders",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List account orders",
+ "description": "Get information about an account's orders.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `campaign_id` value."
+ },
+ "description": "Restrict results to orders with a specific `campaign_id` value.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "outreach_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `outreach_id` value."
+ },
+ "description": "Restrict results to orders with a specific `outreach_id` value.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "customer_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders made by a specific customer."
+ },
+ "description": "Restrict results to orders made by a specific customer.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "has_outreach",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad."
+ },
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStores",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_ecommerce_stores_info",
+ "description": {
+ "tagline": "Retrieve information about all ecommerce stores in the account.",
+ "detailed": "This tool fetches details of all ecommerce stores linked to the account, enabling insights into store data."
+ },
+ "return_annotation": "Information about all stores in the account.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "selected_fields",
+ "specific_fields"
+ ],
+ "description": "Comma-separated list of fields to return using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for nested objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_records",
+ "max_records"
+ ],
+ "description": "Specify the number of store records to return (10 to 1000).",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_offset",
+ "records_skip_count"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List stores",
+ "description": "Get information about all stores in the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStores",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_new_ecommerce_store",
+ "description": {
+ "tagline": "Add a new e-commerce store to your Mailchimp account.",
+ "detailed": "Use this tool to add a new store to your Mailchimp account for managing e-commerce activities. Call this tool when you need to integrate a new store with Mailchimp."
+ },
+ "return_annotation": "Confirmation of the added store to Mailchimp.",
+ "arguments": [
+ {
+ "name": "ecommerce_store_details",
+ "alternative_names": [
+ "store_information",
+ "store_data"
+ ],
+ "description": "A JSON object with details about the e-commerce store like id, platform, domain, etc.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add store",
+ "description": "Add a new store to your Mailchimp account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the store."
+ },
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the store."
+ },
+ "platform": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store domain. This parameter is required for Connected Sites and Google Ads."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address for the store."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "money_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc."
+ },
+ "primary_locale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The primary locale for the store. For example: `en`, `de`, etc."
+ },
+ "timezone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The timezone for the store."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store phone number."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's mailing address."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the store's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the store is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the store's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for to the store's country."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude of the store location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude of the store location."
+ }
+ },
+ "inner_properties": null,
+ "description": "The store address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "example": "example_store"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change.",
+ "example": "1a2df69511"
+ },
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain. This parameter is required for Connected Sites and Google Ads.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ }
+ },
+ "required": [
+ "id",
+ "list_id",
+ "name",
+ "currency_code"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Store\",\n \"description\": \"An individual store in an account.\",\n \"required\": [\n \"id\",\n \"list_id\",\n \"name\",\n \"currency_code\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Store Foreign ID\",\n \"description\": \"The unique identifier for the store.\",\n \"example\": \"example_store\"\n },\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change.\",\n \"example\": \"1a2df69511\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Store Name\",\n \"description\": \"The name of the store.\",\n \"example\": \"Freddie's Cat Hat Emporium\"\n },\n \"platform\": {\n \"type\": \"string\",\n \"title\": \"Platform\",\n \"description\": \"The e-commerce platform of the store.\"\n },\n \"domain\": {\n \"type\": \"string\",\n \"title\": \"Domain\",\n \"description\": \"The store domain. This parameter is required for Connected Sites and Google Ads.\",\n \"example\": \"example.com\"\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations).\"\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The email address for the store.\",\n \"example\": \"freddie@mailchimp.com\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\",\n \"example\": \"USD\"\n },\n \"money_format\": {\n \"type\": \"string\",\n \"title\": \"Money Format\",\n \"description\": \"The currency format for the store. For example: `$`, `\\u00a3`, etc.\",\n \"example\": \"$\"\n },\n \"primary_locale\": {\n \"type\": \"string\",\n \"title\": \"Primary Locale\",\n \"description\": \"The primary locale for the store. For example: `en`, `de`, etc.\",\n \"example\": \"fr\"\n },\n \"timezone\": {\n \"type\": \"string\",\n \"title\": \"Timezone\",\n \"description\": \"The timezone for the store.\",\n \"example\": \"Eastern\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone\",\n \"description\": \"The store phone number.\",\n \"example\": \"+16155550128\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The store address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The store's mailing address.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the store's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the store is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The store's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the store's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The store's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The store's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for to the store's country.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude of the store location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude of the store location.\",\n \"example\": 45.427408\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_ecommerce_store_info",
+ "description": {
+ "tagline": "Retrieve detailed information about a specific eCommerce store.",
+ "detailed": "Use this tool to get detailed information about a specific store in Mailchimp's eCommerce service. Call this when you need to access store data, such as name, domain, or other relevant attributes."
+ },
+ "return_annotation": "Details about a specific eCommerce store.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_id",
+ "ecommerce_store_id"
+ ],
+ "description": "A unique identifier for the store to retrieve information about.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "included_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "excluded_fields_list",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get store info",
+ "description": "Get information about a specific store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_ecommerce_store",
+ "description": {
+ "tagline": "Update an e-commerce store's details.",
+ "detailed": "This tool is used to update the information of an existing e-commerce store in Mailchimp. Call this when you need to modify store details, such as the store name or other attributes."
+ },
+ "return_annotation": "Details about the updated store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the store you want to update.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "store_update_details",
+ "alternative_names": [
+ "store_modification_payload",
+ "store_information_json"
+ ],
+ "description": "Details of the e-commerce store to update, including attributes like name, platform, domain, and address.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update store",
+ "description": "Update a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the store."
+ },
+ "platform": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store domain."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address for the store."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "money_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc."
+ },
+ "primary_locale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The primary locale for the store. For example: `en`, `de`, etc."
+ },
+ "timezone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The timezone for the store."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store phone number."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's mailing address."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the store's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the store is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the store's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for to the store's country."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude of the store location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude of the store location."
+ }
+ },
+ "inner_properties": null,
+ "description": "The store address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Store\",\n \"description\": \"An individual store in an account.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Store Name\",\n \"description\": \"The name of the store.\",\n \"example\": \"Freddie's Cat Hat Emporium\"\n },\n \"platform\": {\n \"type\": \"string\",\n \"title\": \"Platform\",\n \"description\": \"The e-commerce platform of the store.\"\n },\n \"domain\": {\n \"type\": \"string\",\n \"title\": \"Domain\",\n \"description\": \"The store domain.\",\n \"example\": \"example.com\"\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations).\"\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The email address for the store.\",\n \"example\": \"freddie@mailchimp.com\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\",\n \"example\": \"USD\"\n },\n \"money_format\": {\n \"type\": \"string\",\n \"title\": \"Money Format\",\n \"description\": \"The currency format for the store. For example: `$`, `\\u00a3`, etc.\",\n \"example\": \"$\"\n },\n \"primary_locale\": {\n \"type\": \"string\",\n \"title\": \"Primary Locale\",\n \"description\": \"The primary locale for the store. For example: `en`, `de`, etc.\",\n \"example\": \"fr\"\n },\n \"timezone\": {\n \"type\": \"string\",\n \"title\": \"Timezone\",\n \"description\": \"The timezone for the store.\",\n \"example\": \"Eastern\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone\",\n \"description\": \"The store phone number.\",\n \"example\": \"+16155550128\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The store address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The store's mailing address.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the store's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the store is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The store's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the store's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The store's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The store's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for to the store's country.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude of the store location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude of the store location.\",\n \"example\": 45.427408\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_ecommerce_store",
+ "description": {
+ "tagline": "Delete a store and its associated subresources.",
+ "detailed": "Use this tool to delete an ecommerce store from Mailchimp Marketing. This action will remove the store along with any related Customers, Orders, Products, and Carts. Invoke this when a store needs to be completely removed from the system."
+ },
+ "return_annotation": "Confirmation of store deletion.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_param",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the store to be deleted.",
+ "endpoint_argument_name": "store_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete store",
+ "description": "Delete a store. Deleting a store will also delete any associated subresources, including Customers, Orders, Products, and Carts.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdCarts",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_store_carts_info",
+ "description": {
+ "tagline": "Retrieve information about a store's ecommerce carts.",
+ "detailed": "Use this tool to get detailed information about carts within a specific store in the ecommerce system. Ideal for understanding cart statuses, contents, and customer interactions."
+ },
+ "return_annotation": "Information about a store's ecommerce carts.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_code",
+ "unique_store_id"
+ ],
+ "description": "The unique identifier for the store to retrieve cart information.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "requested_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for nested objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "exclude_data_fields",
+ "omit_response_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "returned_records_number"
+ ],
+ "description": "Specify the number of records to return, up to a maximum of 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_from"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/carts",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List carts",
+ "description": "Get information about a store's carts.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdCarts",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_cart_to_store",
+ "description": {
+ "tagline": "Add a new cart to an ecommerce store.",
+ "detailed": "This tool adds a new cart to a specified ecommerce store using Mailchimp Marketing. It should be called when a user needs to create a new cart for a store."
+ },
+ "return_annotation": "Confirmation of new cart addition to the store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the ecommerce store where the new cart will be added. This is essential to specify the target store.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_details",
+ "alternative_names": [
+ "cart_data",
+ "cart_information"
+ ],
+ "description": "JSON object containing the details of the new cart, including cart ID, customer info, campaign ID, checkout URL, currency code, order total, tax total, and line items.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/carts",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add cart",
+ "description": "Add a new cart to a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for a cart."
+ },
+ "checkout_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ }
+ },
+ "description": "An array of the cart's line items."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Foreign ID",
+ "description": "A unique identifier for the cart."
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign for a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ }
+ },
+ "required": [
+ "id",
+ "product_id",
+ "product_variant_id",
+ "quantity",
+ "price"
+ ]
+ }
+ }
+ },
+ "required": [
+ "id",
+ "currency_code",
+ "customer",
+ "order_total",
+ "lines"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart\",\n \"description\": \"Information about a specific cart.\",\n \"required\": [\n \"id\",\n \"currency_code\",\n \"customer\",\n \"order_total\",\n \"lines\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Cart Foreign ID\",\n \"description\": \"A unique identifier for the cart.\"\n },\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign for a cart.\",\n \"example\": \"839488a60b\"\n },\n \"checkout_url\": {\n \"type\": \"string\",\n \"title\": \"Checkout URL\",\n \"description\": \"The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations.\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the cart uses.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The order total for the cart.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The total tax for the cart.\"\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Cart Line Items\",\n \"description\": \"An array of the cart's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Item Foreign ID\",\n \"description\": \"A unique identifier for the cart line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdCartsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_cart_info",
+ "description": {
+ "tagline": "Fetch information about a specific ecommerce cart.",
+ "detailed": "Use this tool to retrieve detailed information about a specific cart in an ecommerce store. It's useful for scenarios where you need to understand the contents or status of a cart identified by store and cart IDs."
+ },
+ "return_annotation": "Information about a specific ecommerce cart.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_number",
+ "shop_identifier"
+ ],
+ "description": "The unique identifier for the store. Use this to specify which store's cart information to retrieve.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "alternative_names": [
+ "cart_id_value",
+ "shopping_cart_id"
+ ],
+ "description": "The unique identifier for the cart in the ecommerce store.",
+ "endpoint_argument_name": "cart_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "desired_fields"
+ ],
+ "description": "Specify a comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for nested objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get cart info",
+ "description": "Get information about a specific cart.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdCartsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_cart",
+ "description": {
+ "tagline": "Update a specific cart in an e-commerce store.",
+ "detailed": "This tool updates a specified cart within a given e-commerce store using the Mailchimp Marketing API. Use it to modify cart details like items, quantities, or any other attributes available. Ideal for scenarios involving cart adjustments before customer checkout."
+ },
+ "return_annotation": "Details of the updated cart.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store where the cart is located.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "alternative_names": [
+ "cart_id_value",
+ "cart_reference"
+ ],
+ "description": "The unique identifier for the cart. Used to specify which cart to update in the e-commerce store.",
+ "endpoint_argument_name": "cart_id"
+ },
+ {
+ "name": "cart_update_details",
+ "alternative_names": [
+ "cart_modification_data",
+ "cart_edit_parameters"
+ ],
+ "description": "JSON object containing the cart details to update including customer info, campaign ID, checkout URL, currency code, order total, tax total, and line items.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update cart",
+ "description": "Update a specific cart.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign associated with a cart."
+ },
+ "checkout_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ }
+ },
+ "description": "An array of the cart's line items."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "properties": {
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ }
+ }
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart\",\n \"description\": \"Information about a specific cart.\",\n \"properties\": {\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"properties\": {\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign associated with a cart.\",\n \"example\": \"839488a60b\"\n },\n \"checkout_url\": {\n \"type\": \"string\",\n \"title\": \"Checkout URL\",\n \"description\": \"The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations.\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the cart uses.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The order total for the cart.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The total tax for the cart.\"\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Cart Line Items\",\n \"description\": \"An array of the cart's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdCartsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_cart",
+ "description": {
+ "tagline": "Deletes a specific cart from an ecommerce store.",
+ "detailed": "Use this tool to delete a cart from a specified store in the ecommerce system. It should be called when you need to remove a cart by providing a specific store and cart ID."
+ },
+ "return_annotation": "Confirmation of cart deletion.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the ecommerce store from which the cart will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_id",
+ "alternative_names": [
+ "cart_identifier",
+ "cart_reference"
+ ],
+ "description": "The ID for the cart to be deleted from the store.",
+ "endpoint_argument_name": "cart_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete cart",
+ "description": "Delete a cart.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdCartsIdLines",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_cart_line_items_info",
+ "description": {
+ "tagline": "Retrieve information about a cart's line items.",
+ "detailed": "Use this tool to get details about the items in a specific cart within an ecommerce store. It provides insights into products added to a cart."
+ },
+ "return_annotation": "Details about a cart's line items.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "store_unique_id"
+ ],
+ "description": "The unique identifier for the store containing the cart.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_id",
+ "alternative_names": [
+ "cart_identifier",
+ "shopping_cart_id"
+ ],
+ "description": "The unique identifier for the cart to retrieve line items for.",
+ "endpoint_argument_name": "cart_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "Specify fields to exclude from the response. Use a comma-separated list with dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "number_of_records",
+ "items_count"
+ ],
+ "description": "The number of cart line items to return, from 1 to 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records_count",
+ "starting_record_offset"
+ ],
+ "description": "Number of records to skip for pagination. Defaults to 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List cart line items",
+ "description": "Get information about a cart's line items.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdCartsIdLines",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_line_item_to_cart",
+ "description": {
+ "tagline": "Add a new line item to an existing shopping cart.",
+ "detailed": "Use this tool to add a product to a specific cart by specifying the store and cart IDs. This enables updating shopping carts with new items in an e-commerce context."
+ },
+ "return_annotation": "Confirms the addition of a line item to the cart.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_number",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store. This is necessary to specify which store's cart will be updated.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "alternative_names": [
+ "cart_id_value",
+ "shopping_cart_id"
+ ],
+ "description": "The unique identifier for the cart to which the line item will be added.",
+ "endpoint_argument_name": "cart_id"
+ },
+ {
+ "name": "cart_line_item_identifier",
+ "alternative_names": [
+ "line_item_id",
+ "item_unique_id"
+ ],
+ "description": "A unique identifier for the cart line item.",
+ "endpoint_argument_name": "id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "product_identifier",
+ "product_key"
+ ],
+ "description": "A unique identifier for the product to be added to the cart line item.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "alternative_names": [
+ "product_variant_identifier",
+ "variant_id"
+ ],
+ "description": "A unique identifier for the product variant to be added to the cart. This is necessary to specify which variant of the product is being added.",
+ "endpoint_argument_name": "product_variant_id"
+ },
+ {
+ "name": "line_item_quantity",
+ "alternative_names": [
+ "cart_item_count",
+ "product_quantity"
+ ],
+ "description": "The number of units for the specified product variant in the cart.",
+ "endpoint_argument_name": "quantity"
+ },
+ {
+ "name": "line_item_price",
+ "alternative_names": [
+ "cart_item_price",
+ "product_price"
+ ],
+ "description": "The monetary price for the line item being added to the cart. Must be a numeric value.",
+ "endpoint_argument_name": "price"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add cart line item",
+ "description": "Add a new line item to an existing cart.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart line item."
+ },
+ "description": "A unique identifier for the cart line item.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "description": "A unique identifier for the product associated with the cart line item.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "product_variant_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "description": "A unique identifier for the product variant associated with the cart line item.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "quantity",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "description": "The quantity of a cart line item.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "price",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ },
+ "description": "The price of a cart line item.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Item Foreign ID\",\n \"description\": \"A unique identifier for the cart line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdCartsIdLinesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "retrieve_cart_line_item_info",
+ "description": {
+ "tagline": "Get information about a specific cart line item.",
+ "detailed": "Call this tool to obtain details about a specific item in an e-commerce cart, such as product details and quantity."
+ },
+ "return_annotation": "Returns detailed information about a specific cart line item.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_number",
+ "shop_id"
+ ],
+ "description": "Unique identifier for the store. Use this to specify which store's cart line item you want to retrieve.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "alternative_names": [
+ "cart_id_number",
+ "shopping_cart_id"
+ ],
+ "description": "The unique identifier for the cart. Required to retrieve specific cart line item information.",
+ "endpoint_argument_name": "cart_id"
+ },
+ {
+ "name": "cart_line_item_id",
+ "alternative_names": [
+ "line_item_id",
+ "cart_item_id"
+ ],
+ "description": "The ID for the line item in a specific cart. Used to identify which item details to retrieve.",
+ "endpoint_argument_name": "line_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "include_fields"
+ ],
+ "description": "A comma-separated list of fields to return for the cart line item. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get cart line item",
+ "description": "Get information about a specific cart line item.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "line_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "description": "The id for the line item of a cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdCartsIdLinesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_cart_line_item",
+ "description": {
+ "tagline": "Update a specific cart line item in Mailchimp.",
+ "detailed": "Use this tool to modify an existing cart line item in a specified e-commerce store within Mailchimp. This can be used to adjust item details such as quantity or other attributes."
+ },
+ "return_annotation": "Details of the updated cart line item.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "retail_store_id"
+ ],
+ "description": "The unique identifier for the e-commerce store. Essential for specifying which store's cart line item to update.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_id",
+ "alternative_names": [
+ "cart_identifier",
+ "shopping_cart_id"
+ ],
+ "description": "The unique identifier for the cart.",
+ "endpoint_argument_name": "cart_id"
+ },
+ {
+ "name": "cart_line_item_id",
+ "alternative_names": [
+ "line_item_id",
+ "cart_line_id"
+ ],
+ "description": "The unique identifier for the line item within the cart to be updated.",
+ "endpoint_argument_name": "line_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "product_id_value",
+ "product_key"
+ ],
+ "description": "A unique identifier for the product associated with the cart line item.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_identifier",
+ "alternative_names": [
+ "variant_id",
+ "product_variant_code"
+ ],
+ "description": "A unique identifier for the product variant associated with the cart line item. Required to specify which variant to update.",
+ "endpoint_argument_name": "product_variant_id"
+ },
+ {
+ "name": "cart_line_item_quantity",
+ "alternative_names": [
+ "line_item_count",
+ "cart_item_quantity"
+ ],
+ "description": "The quantity of the cart line item to update.",
+ "endpoint_argument_name": "quantity"
+ },
+ {
+ "name": "cart_line_item_price",
+ "alternative_names": [
+ "line_item_cost",
+ "item_price"
+ ],
+ "description": "The price of a cart line item to be updated.",
+ "endpoint_argument_name": "price"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update cart line item",
+ "description": "Update a specific cart line item.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "line_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "description": "The id for the line item of a cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "description": "A unique identifier for the product associated with the cart line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "product_variant_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "description": "A unique identifier for the product variant associated with the cart line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "quantity",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "description": "The quantity of a cart line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "price",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ },
+ "description": "The price of a cart line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdCartsLinesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_cart_line_item",
+ "description": {
+ "tagline": "Delete a specific cart line item.",
+ "detailed": "Use this tool to delete a particular line item from a cart in an eCommerce store. Call this tool when you need to remove an item from a customer's shopping cart."
+ },
+ "return_annotation": "Confirmation of cart line item deletion.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_key",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store from which the cart line item will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "alternative_names": [
+ "cart_id_number",
+ "shopping_cart_id"
+ ],
+ "description": "The unique identifier for the cart in the eCommerce store.",
+ "endpoint_argument_name": "cart_id"
+ },
+ {
+ "name": "line_item_id",
+ "alternative_names": [
+ "cart_line_item_id",
+ "item_identifier"
+ ],
+ "description": "ID for the line item in the cart to be deleted.",
+ "endpoint_argument_name": "line_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete cart line item",
+ "description": "Delete a specific cart line item.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "cart_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "description": "The id for the cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "line_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "description": "The id for the line item of a cart.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdCustomers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_store_customers_info",
+ "description": {
+ "tagline": "Retrieve information about a store's customers.",
+ "detailed": "Use this tool to get detailed information about the customers of a specific e-commerce store. Ideal for accessing customer data to analyze or manage store interactions."
+ },
+ "return_annotation": "Information about a store's customers.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the e-commerce store to retrieve customer information.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "returned_fields_list",
+ "fields_selection"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_attributes"
+ ],
+ "description": "Comma-separated fields to exclude in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "result_limit"
+ ],
+ "description": "The number of customer records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "pagination_start"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "filter_by_email_address",
+ "alternative_names": [
+ "restrict_by_email",
+ "search_email_address"
+ ],
+ "description": "Restrict the response to customers matching the specified email address.",
+ "endpoint_argument_name": "email_address"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/customers",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List customers",
+ "description": "Get information about a store's customers.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "email_address",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to customers with the email address."
+ },
+ "description": "Restrict the response to customers with the email address.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdCustomers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_customer_to_store",
+ "description": {
+ "tagline": "Add a new customer to an ecommerce store.",
+ "detailed": "This tool adds a new customer to a specified ecommerce store. It should be called when a new customer needs to be registered in the store's system."
+ },
+ "return_annotation": "Confirmation of new customer addition to the store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_number",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the ecommerce store where the customer will be added.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "customer_data",
+ "alternative_names": [
+ "customer_details",
+ "customer_information"
+ ],
+ "description": "JSON data containing customer details such as ID, email, phone, opt-in status, name, company, and address.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/customers",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add customer",
+ "description": "Add a new customer to a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ },
+ "required": [
+ "id",
+ "opt_in_status"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer.\",\n \"required\": [\n \"id\",\n \"opt_in_status\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"sms_phone_number\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"A US phone number for SMS contact.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdCustomersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_customer_info",
+ "description": {
+ "tagline": "Retrieve specific customer information from an eCommerce store.",
+ "detailed": "Use this tool to get detailed information about a specific customer from an eCommerce store using their customer ID and store ID. Ideal for checking customer profiles, transaction histories, and personal information tied to their account."
+ },
+ "return_annotation": "Details about a specific customer.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_id",
+ "commerce_id"
+ ],
+ "description": "The unique identifier for the eCommerce store.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "customer_id",
+ "alternative_names": [
+ "client_id",
+ "user_id"
+ ],
+ "description": "The unique identifier for a customer in a specific store. Required to fetch customer details.",
+ "endpoint_argument_name": "customer_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to return for the customer data. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_specific_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get customer info",
+ "description": "Get information about a specific customer.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "customer_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "description": "The id for the customer of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "putEcommerceStoresIdCustomersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_or_update_customer_in_store",
+ "description": {
+ "tagline": "Add or update a customer in an eCommerce store.",
+ "detailed": "Use this tool to add a new customer or update an existing customer's information in a specific eCommerce store using Mailchimp Marketing."
+ },
+ "return_annotation": "Confirmation of customer addition or update in the store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_key",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the eCommerce store where the customer will be added or updated.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "customer_identifier",
+ "alternative_names": [
+ "client_id",
+ "individual_id"
+ ],
+ "description": "The unique identifier for the customer in the specified store. This ID is necessary for adding or updating customer details.",
+ "endpoint_argument_name": "customer_id"
+ },
+ {
+ "name": "customer_data",
+ "alternative_names": [
+ "customer_information",
+ "customer_details"
+ ],
+ "description": "JSON object containing the customer's unique id, email, phone number, opt-in status, company, name, and address details for addition or update in the store.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PUT",
+ "path": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add or update customer",
+ "description": "Add or update a customer.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "customer_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "description": "The id for the customer of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ },
+ "required": [
+ "id",
+ "opt_in_status"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\",\n \"opt_in_status\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"sms_phone_number\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"A US phone number for SMS contact.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdCustomersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_customer_info",
+ "description": {
+ "tagline": "Update a customer's information in an ecommerce store.",
+ "detailed": "Use this tool to update the information of a customer within a specific ecommerce store. Ideal for changes in customer details such as address, contact info, or other personal data."
+ },
+ "return_annotation": "Confirmation of customer update operation.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_unique_id",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the ecommerce store where the customer resides.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "customer_identifier",
+ "alternative_names": [
+ "client_id",
+ "user_id"
+ ],
+ "description": "The unique identifier for a customer in a specific store. Required to update customer information.",
+ "endpoint_argument_name": "customer_id"
+ },
+ {
+ "name": "customer_update_data",
+ "alternative_names": [
+ "customer_info_payload",
+ "customer_update_payload"
+ ],
+ "description": "JSON object containing customer details to update, such as name, address, company, and opt-in status.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update customer",
+ "description": "Update a customer.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "customer_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "description": "The id for the customer of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"properties\": {\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdCustomersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_store_customer",
+ "description": {
+ "tagline": "Delete a customer from an ecommerce store.",
+ "detailed": "Call this tool to remove a specific customer from a given ecommerce store. Use when you need to manage customer records by deleting them from a store's database."
+ },
+ "return_annotation": "Confirmation of customer deletion from the store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "retailer_id"
+ ],
+ "description": "The unique identifier for the ecommerce store from which the customer will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "customer_identifier",
+ "alternative_names": [
+ "client_id",
+ "shopper_id"
+ ],
+ "description": "The unique identifier for the customer to be deleted from the store. This ID is used to specify which customer's records should be removed.",
+ "endpoint_argument_name": "customer_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete customer",
+ "description": "Delete a customer from a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "customer_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "description": "The id for the customer of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdPromorules",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_store_promo_rules",
+ "description": {
+ "tagline": "Retrieve promo rules for a specified store.",
+ "detailed": "Use this tool to get detailed information about the promotional rules set up for a specific e-commerce store using its ID."
+ },
+ "return_annotation": "Information about a store's promo rules.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_code",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the store to retrieve promo rules from.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "returned_fields",
+ "output_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "fields_to_exclude"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "alternative_names": [
+ "num_records_to_return",
+ "records_count"
+ ],
+ "description": "Specify the number of promo rule records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_count",
+ "pagination_start"
+ ],
+ "description": "The number of records to skip for pagination, with a default value of 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/promo-rules",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List promo rules",
+ "description": "Get information about a store's promo rules.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdPromorules",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_store_promo_rule",
+ "description": {
+ "tagline": "Add a new promo rule to an e-commerce store on Mailchimp.",
+ "detailed": "This tool is used to add a new promotional rule to a specific e-commerce store within Mailchimp. It is ideal for automating the management of store promotions."
+ },
+ "return_annotation": "Confirmation of the newly added promo rule.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store where the promo rule will be added.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_details",
+ "alternative_names": [
+ "promotion_rule_data",
+ "campaign_rule_details"
+ ],
+ "description": "JSON object containing details of the promo rule, including 'id', 'title', 'description', 'starts_at', 'ends_at', 'amount', 'type', 'target', 'enabled', 'created_at_foreign', and 'updated_at_foreign'. These fields ensure the creation or updating of the promotional rule adheres to specifications, such as format, length, and allowed values.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/promo-rules",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add promo rule",
+ "description": "Add a new promo rule to a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255."
+ },
+ "starts_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed."
+ },
+ "target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The target that the discount applies to."
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo rule is currently enabled."
+ },
+ "created_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Rule Foreign ID",
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ends_at": {
+ "type": "string",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format.",
+ "format": "Promo date-time"
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "format": "float",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "format": "date-time"
+ }
+ },
+ "required": [
+ "id",
+ "description",
+ "amount",
+ "type",
+ "target"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Rule\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Rule.\",\n \"required\": [\n \"id\",\n \"description\",\n \"amount\",\n \"type\",\n \"target\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Promo Rule Foreign ID\",\n \"description\": \"A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.\",\n \"example\": \"50% off Total Order\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a promotion restricted to UTF-8 characters with max length 255.\",\n \"example\": \"Save BIG during our summer sale!\"\n },\n \"starts_at\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Promo Start Time\",\n \"description\": \"The date and time when the promotion is in effect in ISO 8601 format.\"\n },\n \"ends_at\": {\n \"type\": \"string\",\n \"format\": \"Promo date-time\",\n \"title\": \"End Time\",\n \"description\": \"The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format.\"\n },\n \"amount\": {\n \"type\": \"number\",\n \"title\": \"Amount\",\n \"format\": \"float\",\n \"description\": \"The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.\",\n \"example\": 0.5\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed.\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n },\n \"target\": {\n \"type\": \"string\",\n \"title\": \"Target\",\n \"description\": \"The target that the discount applies to.\",\n \"enum\": [\n \"per_item\",\n \"total\",\n \"shipping\"\n ]\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo rule is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdPromorulesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_promo_rule_info",
+ "description": {
+ "tagline": "Retrieve information about a specific promo rule in an ecommerce store.",
+ "detailed": ""
+ },
+ "return_annotation": "Information about a specific promo rule.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_identifier",
+ "store_identifier"
+ ],
+ "description": "The unique identifier for the ecommerce store. Required to fetch promo rule details.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "alternative_names": [
+ "promotion_rule_id",
+ "discount_rule_id"
+ ],
+ "description": "The unique identifier for the promo rule in the store. Required to fetch specific rule details.",
+ "endpoint_argument_name": "promo_rule_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "specific_fields"
+ ],
+ "description": "A comma-separated list of specific fields to return using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the promo rule data. Use dot notation to reference sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get promo rule",
+ "description": "Get information about a specific promo rule.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdPromorulesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_promo_rule",
+ "description": {
+ "tagline": "Update a promotional rule in an e-commerce store.",
+ "detailed": "Use this tool to modify details of an existing promotional rule in a specified e-commerce store. It should be called when you need to update the conditions or discounts associated with a promo rule."
+ },
+ "return_annotation": "Details of the updated promo rule.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "store_reference"
+ ],
+ "description": "Specify the unique identifier of the e-commerce store where the promo rule will be updated.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_identifier",
+ "alternative_names": [
+ "promo_rule_id_value",
+ "promotion_rule_id"
+ ],
+ "description": "The unique identifier for the promotional rule within the store. This is required to specify which promo rule to update.",
+ "endpoint_argument_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_rule_details",
+ "alternative_names": [
+ "promotion_details",
+ "promo_rule_data"
+ ],
+ "description": "Details of the promo rule update, including title, description, start and end dates, type, target, amount, and enabled status. Expected as JSON.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update promo rule",
+ "description": "Update a promo rule.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255."
+ },
+ "starts_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed."
+ },
+ "target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The target that the discount applies to."
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo rule is currently enabled."
+ },
+ "created_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ends_at": {
+ "type": "string",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format.",
+ "format": "Promo date-time"
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "format": "float",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "format": "date-time"
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Rule\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Rule.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.\",\n \"example\": \"50% off Total Order\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a promotion restricted to UTF-8 characters with max length 255.\",\n \"example\": \"Save BIG during our summer sale!\"\n },\n \"starts_at\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Promo Start Time\",\n \"description\": \"The date and time when the promotion is in effect in ISO 8601 format.\"\n },\n \"ends_at\": {\n \"type\": \"string\",\n \"format\": \"Promo date-time\",\n \"title\": \"End Time\",\n \"description\": \"The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format.\"\n },\n \"amount\": {\n \"type\": \"number\",\n \"title\": \"Amount\",\n \"format\": \"float\",\n \"description\": \"The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.\",\n \"example\": 0.5\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed.\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n },\n \"target\": {\n \"type\": \"string\",\n \"title\": \"Target\",\n \"description\": \"The target that the discount applies to.\",\n \"enum\": [\n \"per_item\",\n \"total\",\n \"shipping\"\n ]\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo rule is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdPromorulesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_promo_rule_from_store",
+ "description": {
+ "tagline": "Delete a promo rule from a specified ecommerce store.",
+ "detailed": "Use this tool to remove a promotional rule from an ecommerce store on Mailchimp. This action is irreversible and will delete the specified promo rule from the store identified by the store ID."
+ },
+ "return_annotation": "Confirmation of promo rule deletion from store.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_id",
+ "store_identifier"
+ ],
+ "description": "The unique identifier for the ecommerce store from which the promo rule will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "alternative_names": [
+ "promo_rule_identifier",
+ "promotion_rule_id"
+ ],
+ "description": "The unique identifier for the promo rule to be deleted from the store.",
+ "endpoint_argument_name": "promo_rule_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete promo rule",
+ "description": "Delete a promo rule from a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdPromocodes",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_store_promo_codes",
+ "description": {
+ "tagline": "Retrieve information about promo codes for a specific store.",
+ "detailed": "Use this tool to get detailed information about promo codes for a given store, which can help in managing promotions and discounts."
+ },
+ "return_annotation": "Information about a store's promo codes.",
+ "arguments": [
+ {
+ "name": "promo_rule_id",
+ "alternative_names": [
+ "promotion_rule_identifier",
+ "promo_rule_identifier"
+ ],
+ "description": "The unique identifier for the promotion rule of a store to fetch promo codes.",
+ "endpoint_argument_name": "promo_rule_id"
+ },
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "store_id_key"
+ ],
+ "description": "The unique identifier for the store to get promo codes from. Required to specify which store's promo codes to retrieve.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "included_fields"
+ ],
+ "description": "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_attributes"
+ ],
+ "description": "Specify a comma-separated list of fields to exclude from the returned data. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "record_count",
+ "max_records_return"
+ ],
+ "description": "The number of promo code records to return. Default is 10, with a maximum of 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "start_position"
+ ],
+ "description": "The number of records to skip for pagination purposes. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List promo codes",
+ "description": "Get information about a store's promo codes.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdPromocodes",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_promo_code_to_store",
+ "description": {
+ "tagline": "Add a new promo code to an ecommerce store.",
+ "detailed": "Use this tool to add a new promotional code to a specific store in the ecommerce platform. This is useful for managing discounts and promotions within the store."
+ },
+ "return_annotation": "Confirmation of promo code addition.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "ecommerce_store_id",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the ecommerce store where the promo code will be added.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_identifier",
+ "alternative_names": [
+ "promo_rule_id",
+ "promotion_rule_id"
+ ],
+ "description": "The ID for the promotional rule associated with the store.",
+ "endpoint_argument_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_identifier",
+ "alternative_names": [
+ "promo_id",
+ "promotion_code_id"
+ ],
+ "description": "A unique identifier for the promo code. Must be UTF-8, max length 50.",
+ "endpoint_argument_name": "id"
+ },
+ {
+ "name": "promo_code",
+ "alternative_names": [
+ "discount_code",
+ "promotion_code"
+ ],
+ "description": "The discount code for the promotion. It must be a UTF-8 string, with a maximum length of 50 characters.",
+ "endpoint_argument_name": "code"
+ },
+ {
+ "name": "promotion_redemption_url",
+ "alternative_names": [
+ "promo_code_url",
+ "discount_redemption_link"
+ ],
+ "description": "The URL used in the promotion campaign. Must be UTF-8, max length 2000 characters.",
+ "endpoint_argument_name": "redemption_url"
+ },
+ {
+ "name": "promo_code_usage_count",
+ "alternative_names": [
+ "promo_code_use_count",
+ "promo_usage_count"
+ ],
+ "description": "Number of times the promo code has been used. This integer value helps track the utilization of the promo code.",
+ "endpoint_argument_name": "usage_count"
+ },
+ {
+ "name": "promotion_creation_datetime",
+ "alternative_names": [
+ "creation_timestamp",
+ "creation_date"
+ ],
+ "description": "The date and time the promotion was created, in ISO 8601 format.",
+ "endpoint_argument_name": "created_at_foreign"
+ },
+ {
+ "name": "promotion_updated_datetime",
+ "alternative_names": [
+ "promotion_updated_time",
+ "promotion_last_updated"
+ ],
+ "description": "The date and time the promotion was last updated, in ISO 8601 format.",
+ "endpoint_argument_name": "updated_at_foreign"
+ },
+ {
+ "name": "is_promo_code_enabled",
+ "alternative_names": [
+ "promo_code_status",
+ "enable_promo"
+ ],
+ "description": "Specifies if the promo code is enabled. Use true to enable, false to disable.",
+ "endpoint_argument_name": "enabled"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add promo code",
+ "description": "Add a new promo code to a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50."
+ },
+ "description": "A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Promo Code Foreign ID",
+ "description": "A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "code",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50."
+ },
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "schema_required": true
+ },
+ {
+ "name": "redemption_url",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000."
+ },
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "schema_required": true
+ },
+ {
+ "name": "usage_count",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Number of times promo code has been used."
+ },
+ "description": "Number of times promo code has been used.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "enabled",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo code is currently enabled."
+ },
+ "description": "Whether the promo code is currently enabled.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "created_at_foreign",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "updated_at_foreign",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Code\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Code.\",\n \"required\": [\n \"id\",\n \"code\",\n \"redemption_url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Promo Code Foreign ID\",\n \"description\": \"A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50.\"\n },\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Promo Code\",\n \"description\": \"The discount code. Restricted to UTF-8 characters with max length 50.\",\n \"example\": \"summersale\"\n },\n \"redemption_url\": {\n \"type\": \"string\",\n \"title\": \"Redemption Url\",\n \"description\": \"The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.\",\n \"example\": \"A url that applies promo code directly at checkout or a url that points to sale page or store url\"\n },\n \"usage_count\": {\n \"type\": \"integer\",\n \"title\": \"Promo Code Usage Count\",\n \"description\": \"Number of times promo code has been used.\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo code is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdPromocodesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_promo_code_info",
+ "description": {
+ "tagline": "Retrieve details of a specific promo code.",
+ "detailed": "Use this tool to get detailed information about a specific promo code associated with a particular store in the Mailchimp Marketing service."
+ },
+ "return_annotation": "Information about a specific promo code.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_id",
+ "retailer_id"
+ ],
+ "description": "The unique identifier for the store. Required to specify which store's promo code information to retrieve.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "alternative_names": [
+ "promotional_rule_identifier",
+ "discount_rule_id"
+ ],
+ "description": "The unique identifier for the promo rule of a store. This is required to fetch specific promo code information.",
+ "endpoint_argument_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_id",
+ "alternative_names": [
+ "promo_code_identifier",
+ "code_id"
+ ],
+ "description": "The unique identifier for the promo code associated with a store.",
+ "endpoint_argument_name": "promo_code_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "selected_fields",
+ "specific_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "exclude_properties",
+ "omit_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get promo code",
+ "description": "Get information about a specific promo code.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_code_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "description": "The id for the promo code of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdPromocodesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_promo_code",
+ "description": {
+ "tagline": "Update details of a specific promo code.",
+ "detailed": "Use this tool to update the details of a specific promo code in an eCommerce store using Mailchimp. It should be called when you need to modify existing promotional codes, such as changing the discount or expiration date."
+ },
+ "return_annotation": "Confirmation of promo code update.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the eCommerce store in Mailchimp.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_identifier",
+ "alternative_names": [
+ "promo_rule_id_alt",
+ "promo_rule_store_id"
+ ],
+ "description": "The identifier for the promo rule in a store. Used to specify which promotional rule to update.",
+ "endpoint_argument_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_identifier",
+ "alternative_names": [
+ "promo_code_key",
+ "promo_code_reference"
+ ],
+ "description": "The unique identifier for the promo code of a store.",
+ "endpoint_argument_name": "promo_code_id"
+ },
+ {
+ "name": "discount_code",
+ "alternative_names": [
+ "promo_code",
+ "coupon_code"
+ ],
+ "description": "The discount code for the promo. Must be UTF-8 and up to 50 characters.",
+ "endpoint_argument_name": "code"
+ },
+ {
+ "name": "promotion_redemption_url",
+ "alternative_names": [
+ "promotion_url",
+ "campaign_url"
+ ],
+ "description": "The URL for the promotion campaign. Must be UTF-8, max 2000 characters.",
+ "endpoint_argument_name": "redemption_url"
+ },
+ {
+ "name": "promo_code_usage_count",
+ "alternative_names": [
+ "promo_code_uses",
+ "usage_counter"
+ ],
+ "description": "Specifies how many times the promo code has been used. Accepts an integer value.",
+ "endpoint_argument_name": "usage_count"
+ },
+ {
+ "name": "promotion_created_at",
+ "alternative_names": [
+ "promotion_creation_date",
+ "promo_created_on"
+ ],
+ "description": "The promotion creation date and time in ISO 8601 format.",
+ "endpoint_argument_name": "created_at_foreign"
+ },
+ {
+ "name": "promotion_update_timestamp",
+ "alternative_names": [
+ "promotion_update_time",
+ "promo_update_datetime"
+ ],
+ "description": "The timestamp when the promotion was updated, in ISO 8601 format. This indicates the last update time of the promo code details.",
+ "endpoint_argument_name": "updated_at_foreign"
+ },
+ {
+ "name": "is_promo_code_enabled",
+ "alternative_names": [
+ "promo_code_status",
+ "activate_promo_code"
+ ],
+ "description": "Set to true to enable the promo code, or false to disable it.",
+ "endpoint_argument_name": "enabled"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update promo code",
+ "description": "Update a promo code.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_code_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "description": "The id for the promo code of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "code",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50."
+ },
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "redemption_url",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000."
+ },
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "usage_count",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Number of times promo code has been used."
+ },
+ "description": "Number of times promo code has been used.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "enabled",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo code is currently enabled."
+ },
+ "description": "Whether the promo code is currently enabled.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "created_at_foreign",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "schema_required": false
+ },
+ {
+ "name": "updated_at_foreign",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Code\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Code.\",\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Promo Code\",\n \"description\": \"The discount code. Restricted to UTF-8 characters with max length 50.\",\n \"example\": \"summersale\"\n },\n \"redemption_url\": {\n \"type\": \"string\",\n \"title\": \"Redemption Url\",\n \"description\": \"The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.\",\n \"example\": \"A url that applies promo code directly at checkout or a url that points to sale page or store url\"\n },\n \"usage_count\": {\n \"type\": \"integer\",\n \"title\": \"Promo Code Usage Count\",\n \"description\": \"Number of times promo code has been used.\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo code is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdPromocodesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_store_promo_code",
+ "description": {
+ "tagline": "Delete a promo code from an e-commerce store.",
+ "detailed": "Use this tool to delete a specific promo code from a designated e-commerce store in Mailchimp Marketing. It is useful when you want to manage or clean up promotional offers by removing existing promo codes."
+ },
+ "return_annotation": "Confirms deletion of the promo code from the store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store from which the promo code will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "alternative_names": [
+ "promo_rule_identifier",
+ "promotion_rule_id"
+ ],
+ "description": "The unique identifier for the promo rule of a store, used to specify which promo rule the code belongs to.",
+ "endpoint_argument_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_id",
+ "alternative_names": [
+ "promo_code_identifier",
+ "code_id"
+ ],
+ "description": "The ID of the promo code to be deleted from the store.",
+ "endpoint_argument_name": "promo_code_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete promo code",
+ "description": "Delete a promo code from a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_rule_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "description": "The id for the promo rule of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "promo_code_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "description": "The id for the promo code of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdOrders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_store_orders_info",
+ "description": {
+ "tagline": "Retrieve information about a store's orders via Mailchimp.",
+ "detailed": "Use this tool to get detailed information about the orders of a specified store from Mailchimp's ecommerce platform."
+ },
+ "return_annotation": "Details about a store's orders.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "store_key"
+ ],
+ "description": "The unique identifier for the store whose orders information is to be retrieved.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "include_fields",
+ "select_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_order_fields",
+ "alternative_names": [
+ "omit_order_fields",
+ "exclude_fields_from_orders"
+ ],
+ "description": "Comma-separated list of order fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "return_records_number"
+ ],
+ "description": "Specify the number of records to return, between 1 and 1000, with a default of 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "record_skip_count",
+ "pagination_skip_amount"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "filter_by_customer_id",
+ "alternative_names": [
+ "order_customer_id",
+ "restrict_to_customer_id"
+ ],
+ "description": "Restrict results to orders made by a specific customer using their unique customer ID.",
+ "endpoint_argument_name": "customer_id"
+ },
+ {
+ "name": "restrict_to_outreach_orders",
+ "alternative_names": [
+ "filter_outreach_orders",
+ "limit_to_orders_with_outreach"
+ ],
+ "description": "Indicate whether to restrict results to orders with an outreach attached, such as an email campaign or Facebook ad. Accepts 'true' or 'false'.",
+ "endpoint_argument_name": "has_outreach"
+ },
+ {
+ "name": "restrict_to_campaign_id",
+ "alternative_names": [
+ "filter_by_campaign_id",
+ "specify_campaign_id"
+ ],
+ "description": "Restrict results to orders with the specified `campaign_id`.",
+ "endpoint_argument_name": "campaign_id"
+ },
+ {
+ "name": "specific_outreach_id",
+ "alternative_names": [
+ "target_outreach_id",
+ "filter_by_outreach_id"
+ ],
+ "description": "Restrict results to orders with a specific outreach ID.",
+ "endpoint_argument_name": "outreach_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/orders",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List orders",
+ "description": "Get information about a store's orders.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "customer_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders made by a specific customer."
+ },
+ "description": "Restrict results to orders made by a specific customer.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "has_outreach",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad."
+ },
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "campaign_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `campaign_id` value."
+ },
+ "description": "Restrict results to orders with a specific `campaign_id` value.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "outreach_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `outreach_id` value."
+ },
+ "description": "Restrict results to orders with a specific `outreach_id` value.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdOrders",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_order_to_store",
+ "description": {
+ "tagline": "Add a new order to an ecommerce store.",
+ "detailed": "This tool adds a new order to a specified store using the store's ID. It should be called when you need to record a new purchase or transaction in your ecommerce system."
+ },
+ "return_annotation": "Confirmation of the order added to the store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_code",
+ "store_id_number"
+ ],
+ "description": "The unique identifier for the store where the order will be added. This should be a string value that accurately corresponds to an existing store in the system.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_details",
+ "alternative_names": [
+ "order_information",
+ "order_data"
+ ],
+ "description": "A JSON object containing order details such as customer info, order total, currency, line items, shipping/billing addresses, and more. Required to add a new order.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/orders",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add order",
+ "description": "Add a new order to a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the shipping address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with the billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order"
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign for an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.",
+ "enum": [
+ "prec"
+ ]
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the shipping address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with the billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ },
+ "required": [
+ "code",
+ "type",
+ "amount_discounted"
+ ]
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ },
+ "required": [
+ "id",
+ "title"
+ ]
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "id",
+ "url"
+ ]
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "description": "The date and time the product was published.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ },
+ "required": [
+ "id",
+ "title",
+ "variants"
+ ]
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "required": [
+ "id",
+ "product_id",
+ "product_variant_id",
+ "quantity",
+ "price"
+ ]
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "required": [
+ "id",
+ "customer",
+ "currency_code",
+ "order_total",
+ "lines"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order\",\n \"description\": \"Information about a specific order.\",\n \"required\": [\n \"id\",\n \"customer\",\n \"currency_code\",\n \"order_total\",\n \"lines\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Foreign ID\",\n \"description\": \"A unique identifier for the order.\"\n },\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign for an order.\",\n \"example\": \"839488a60b\"\n },\n \"cart_id\": {\n \"type\": \"string\",\n \"title\": \"Cart ID\",\n \"description\": \"A cart id that the order was placed for.\",\n \"example\": \"cart-123\"\n },\n \"landing_site\": {\n \"type\": \"string\",\n \"title\": \"Landing Site\",\n \"description\": \"The URL for the page where the buyer landed when entering the shop.\",\n \"example\": \"http://www.example.com?source=abc\"\n },\n \"financial_status\": {\n \"type\": \"string\",\n \"title\": \"Financial Status\",\n \"description\": \"The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"fulfillment_status\": {\n \"type\": \"string\",\n \"title\": \"Fulfillment Status\",\n \"description\": \"The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The total for the order.\"\n },\n \"order_url\": {\n \"type\": \"string\",\n \"title\": \"Order URL\",\n \"description\": \"The URL for the order.\"\n },\n \"discount_total\": {\n \"type\": \"number\",\n \"title\": \"Discount Total\",\n \"description\": \"The total amount of the discounts to be applied to the price of the order.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The tax total for the order.\"\n },\n \"shipping_total\": {\n \"type\": \"number\",\n \"title\": \"Shipping Total\",\n \"description\": \"The shipping total for the order.\"\n },\n \"tracking_code\": {\n \"type\": \"string\",\n \"enum\": [\n \"prec\"\n ],\n \"title\": \"Tracking Code\",\n \"description\": \"The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.\"\n },\n \"processed_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Processed Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was processed in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"cancelled_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Cancel Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Update Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was updated in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"shipping_address\": {\n \"type\": \"object\",\n \"title\": \"Shipping Address\",\n \"description\": \"The shipping address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's shipping address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The shipping address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the shipping address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the order's shipping address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the order's shipping address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state in the shipping address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the shipping address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the shipping address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the shipping address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the shipping address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the shipping address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the order's shipping address.\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the shipping address.\"\n }\n }\n },\n \"billing_address\": {\n \"type\": \"object\",\n \"title\": \"Billing Address\",\n \"description\": \"The billing address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with the billing address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The billing address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the billing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the billing address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the billing address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province in the billing address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the billing address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the billing address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the billing address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the billing address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the billing address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the billing address\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the billing address.\"\n }\n }\n },\n \"promos\": {\n \"type\": \"array\",\n \"title\": \"Promos\",\n \"description\": \"The promo codes applied on the order\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"code\",\n \"type\",\n \"amount_discounted\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Code\",\n \"description\": \"The Promo Code\"\n },\n \"amount_discounted\": {\n \"type\": \"number\",\n \"title\": \"Amount Discounted\",\n \"description\": \"The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n }\n }\n }\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Order Line Items\",\n \"description\": \"An array of the order's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Foreign ID\",\n \"description\": \"A unique identifier for the order line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"product\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\",\n \"title\",\n \"variants\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n },\n \"outreach\": {\n \"type\": \"object\",\n \"title\": \"Outreach\",\n \"description\": \"The outreach associated with this order. For example, an email campaign or Facebook ad.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Outreach ID\",\n \"description\": \"A unique identifier for the outreach. Can be an email campaign ID.\",\n \"example\": \"839488a60b\"\n }\n }\n },\n \"tracking_number\": {\n \"type\": \"string\",\n \"title\": \"Tracking number\",\n \"description\": \"The tracking number associated with the order.\"\n },\n \"tracking_carrier\": {\n \"type\": \"string\",\n \"title\": \"Tracking carrier\",\n \"description\": \"The tracking carrier associated with the order.\"\n },\n \"tracking_url\": {\n \"type\": \"string\",\n \"title\": \"Tracking URL\",\n \"description\": \"The tracking URL associated with the order.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdOrdersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_specific_order_info",
+ "description": {
+ "tagline": "Retrieve information about a specific order in a store.",
+ "detailed": "Use this tool to obtain details about a specific order from an e-commerce store. It should be called when needing to access order information using the order ID and store ID."
+ },
+ "return_annotation": "Details about a specific order from a store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_key",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store. Required to fetch order information.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "order_identifier",
+ "order_reference_id"
+ ],
+ "description": "The unique identifier for the order in a store. It is required to retrieve specific order details.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "select_fields"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "excluded_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get order info",
+ "description": "Get information about a specific order.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "putEcommerceStoresIdOrdersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_ecommerce_order",
+ "description": {
+ "tagline": "Add or update an order in an ecommerce store.",
+ "detailed": "Use this tool to either add a new order or update an existing order within an ecommerce store in Mailchimp Marketing. This tool is suitable when order details need to be adjusted or fresh orders are being added."
+ },
+ "return_annotation": "Confirms the addition or update of an order in an ecommerce store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "retail_id"
+ ],
+ "description": "The unique identifier for the store in which the order is being added or updated.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_identifier",
+ "alternative_names": [
+ "order_id_value",
+ "store_order_id"
+ ],
+ "description": "The unique identifier for the order in the store. Used to specify which order to update or add.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "order_request_data",
+ "alternative_names": [
+ "order_data_payload",
+ "ecommerce_order_details"
+ ],
+ "description": "The JSON object containing all order details such as customer info, financial status, and line items.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PUT",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add or update order",
+ "description": "Add or update an order.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the shipping address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with the billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order"
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "405 N Angier Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign for an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.",
+ "enum": [
+ "prec"
+ ]
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "format": "date-time",
+ "example": "2024-09-10T17:27:43+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.",
+ "format": "date-time",
+ "example": "2024-09-10T17:27:43+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "format": "date-time",
+ "example": "2024-09-10T17:27:43+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "405 N Angier Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the shipping address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The country in the shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -84.362887
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 33.768526
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address.",
+ "example": "+16155550128"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with the billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "405 N Angier Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -84.362887
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 33.768526
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address",
+ "example": "+16155550128"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ },
+ "required": [
+ "code",
+ "type",
+ "amount_discounted"
+ ]
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ },
+ "required": [
+ "id",
+ "title"
+ ]
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "id",
+ "url"
+ ]
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "description": "The date and time the product was published.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "required": [
+ "id"
+ ]
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order\",\n \"description\": \"Information about a specific order.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Foreign ID\",\n \"description\": \"A unique identifier for the order.\"\n },\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"405 N Angier Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign for an order.\",\n \"example\": \"839488a60b\"\n },\n \"cart_id\": {\n \"type\": \"string\",\n \"title\": \"Cart ID\",\n \"description\": \"A cart id that the order was placed for.\",\n \"example\": \"cart-123\"\n },\n \"landing_site\": {\n \"type\": \"string\",\n \"title\": \"Landing Site\",\n \"description\": \"The URL for the page where the buyer landed when entering the shop.\",\n \"example\": \"http://www.example.com?source=abc\"\n },\n \"financial_status\": {\n \"type\": \"string\",\n \"title\": \"Financial Status\",\n \"description\": \"The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"fulfillment_status\": {\n \"type\": \"string\",\n \"title\": \"Fulfillment Status\",\n \"description\": \"The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The total for the order.\"\n },\n \"order_url\": {\n \"type\": \"string\",\n \"title\": \"Order URL\",\n \"description\": \"The URL for the order.\"\n },\n \"discount_total\": {\n \"type\": \"number\",\n \"title\": \"Discount Total\",\n \"description\": \"The total amount of the discounts to be applied to the price of the order.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The tax total for the order.\"\n },\n \"shipping_total\": {\n \"type\": \"number\",\n \"title\": \"Shipping Total\",\n \"description\": \"The shipping total for the order.\"\n },\n \"tracking_code\": {\n \"type\": \"string\",\n \"enum\": [\n \"prec\"\n ],\n \"title\": \"Tracking Code\",\n \"description\": \"The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.\"\n },\n \"processed_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Processed Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was processed in ISO 8601 format.\",\n \"example\": \"2024-09-10T17:27:43+00:00\"\n },\n \"cancelled_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Cancel Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.\",\n \"example\": \"2024-09-10T17:27:43+00:00\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Update Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was updated in ISO 8601 format.\",\n \"example\": \"2024-09-10T17:27:43+00:00\"\n },\n \"shipping_address\": {\n \"type\": \"object\",\n \"title\": \"Shipping Address\",\n \"description\": \"The shipping address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's shipping address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The shipping address for the order.\",\n \"example\": \"405 N Angier Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the shipping address.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the order's shipping address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the order's shipping address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state in the shipping address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the shipping address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country\",\n \"description\": \"The country in the shipping address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the shipping address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the shipping address location.\",\n \"example\": -84.362887\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the shipping address location.\",\n \"example\": 33.768526\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the order's shipping address.\",\n \"example\": \"+16155550128\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the shipping address.\"\n }\n }\n },\n \"billing_address\": {\n \"type\": \"object\",\n \"title\": \"Billing Address\",\n \"description\": \"The billing address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with the billing address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The billing address for the order.\",\n \"example\": \"405 N Angier Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the billing address.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the billing address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the billing address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province in the billing address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the billing address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country\",\n \"description\": \"The country in the billing address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the billing address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the billing address location.\",\n \"example\": -84.362887\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the billing address location.\",\n \"example\": 33.768526\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the billing address\",\n \"example\": \"+16155550128\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the billing address.\"\n }\n }\n },\n \"promos\": {\n \"type\": \"array\",\n \"title\": \"Promos\",\n \"description\": \"The promo codes applied on the order\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"code\",\n \"type\",\n \"amount_discounted\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Code\",\n \"description\": \"The Promo Code\"\n },\n \"amount_discounted\": {\n \"type\": \"number\",\n \"title\": \"Amount Discounted\",\n \"description\": \"The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n }\n }\n }\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Order Line Items\",\n \"description\": \"An array of the order's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Foreign ID\",\n \"description\": \"A unique identifier for the order line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"product\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n },\n \"outreach\": {\n \"type\": \"object\",\n \"title\": \"Outreach\",\n \"description\": \"The outreach associated with this order. For example, an email campaign or Facebook ad.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Outreach ID\",\n \"description\": \"A unique identifier for the outreach. Can be an email campaign ID.\",\n \"example\": \"839488a60b\"\n }\n }\n },\n \"tracking_number\": {\n \"type\": \"string\",\n \"title\": \"Tracking number\",\n \"description\": \"The tracking number associated with the order.\"\n },\n \"tracking_carrier\": {\n \"type\": \"string\",\n \"title\": \"Tracking carrier\",\n \"description\": \"The tracking carrier associated with the order.\"\n },\n \"tracking_url\": {\n \"type\": \"string\",\n \"title\": \"Tracking URL\",\n \"description\": \"The tracking URL associated with the order.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdOrdersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_order_mailchimp",
+ "description": {
+ "tagline": "Update a specific order in Mailchimp's e-commerce store.",
+ "detailed": "Use this tool to modify order details in a specified Mailchimp e-commerce store. It updates the order data based on provided criteria and returns the updated order status."
+ },
+ "return_annotation": "Details of the updated order status.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "retail_id"
+ ],
+ "description": "The unique identifier for the store in which the order is being updated.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "store_order_id",
+ "order_identifier"
+ ],
+ "description": "The unique identifier for the order in the store that needs to be updated.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "order_update_details",
+ "alternative_names": [
+ "order_modification_data",
+ "order_edit_payload"
+ ],
+ "description": "JSON object with details for updating an order, including customer info, financial status, shipping and billing addresses, promos, and line items.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update order",
+ "description": "Update a specific order.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign associated with an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state the order's shipping address is located in."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the order's shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the order's shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with an order's shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.",
+ "enum": [
+ "prec"
+ ]
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ },
+ "required": [
+ "code",
+ "type",
+ "amount_discounted"
+ ]
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order\",\n \"description\": \"Information about a specific order.\",\n \"properties\": {\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"properties\": {\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign associated with an order.\",\n \"example\": \"839488a60b\"\n },\n \"cart_id\": {\n \"type\": \"string\",\n \"title\": \"Cart ID\",\n \"description\": \"A cart id that the order was placed for.\",\n \"example\": \"cart-123\"\n },\n \"landing_site\": {\n \"type\": \"string\",\n \"title\": \"Landing Site\",\n \"description\": \"The URL for the page where the buyer landed when entering the shop.\",\n \"example\": \"http://www.example.com?source=abc\"\n },\n \"financial_status\": {\n \"type\": \"string\",\n \"title\": \"Financial Status\",\n \"description\": \"The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"fulfillment_status\": {\n \"type\": \"string\",\n \"title\": \"Fulfillment Status\",\n \"description\": \"The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The order total associated with an order.\"\n },\n \"order_url\": {\n \"type\": \"string\",\n \"title\": \"Order URL\",\n \"description\": \"The URL for the order.\"\n },\n \"discount_total\": {\n \"type\": \"number\",\n \"title\": \"Discount Total\",\n \"description\": \"The total amount of the discounts to be applied to the price of the order.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The tax total associated with an order.\"\n },\n \"shipping_total\": {\n \"type\": \"number\",\n \"title\": \"Shipping Total\",\n \"description\": \"The shipping total for the order.\"\n },\n \"tracking_code\": {\n \"type\": \"string\",\n \"enum\": [\n \"prec\"\n ],\n \"title\": \"Tracking Code\",\n \"description\": \"The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.\"\n },\n \"processed_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Processed Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was processed in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"cancelled_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Cancel Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Update Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was updated in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"shipping_address\": {\n \"type\": \"object\",\n \"title\": \"Shipping Address\",\n \"description\": \"The shipping address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's shipping address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The shipping address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the shipping address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the order's shipping address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the order's shipping address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state the order's shipping address is located in.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the order's shipping address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the order's shipping address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the shipping address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the shipping address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the shipping address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the order's shipping address\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with an order's shipping address.\"\n }\n }\n },\n \"billing_address\": {\n \"type\": \"object\",\n \"title\": \"Billing Address\",\n \"description\": \"The billing address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's billing address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The billing address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the billing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the billing address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the billing address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state in the billing address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the billing address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the billing address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the billing address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the billing address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the billing address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the billing address.\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the billing address.\"\n }\n }\n },\n \"promos\": {\n \"type\": \"array\",\n \"title\": \"Promos\",\n \"description\": \"The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided.\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"code\",\n \"type\",\n \"amount_discounted\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Code\",\n \"description\": \"The Promo Code\"\n },\n \"amount_discounted\": {\n \"type\": \"number\",\n \"title\": \"Amount Discounted\",\n \"description\": \"The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n }\n }\n }\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Order Line Items\",\n \"description\": \"An array of the order's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n },\n \"outreach\": {\n \"type\": \"object\",\n \"title\": \"Outreach\",\n \"description\": \"The outreach associated with this order. For example, an email campaign or Facebook ad.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Outreach ID\",\n \"description\": \"A unique identifier for the outreach. Can be an email campaign ID.\",\n \"example\": \"839488a60b\"\n }\n }\n },\n \"tracking_number\": {\n \"type\": \"string\",\n \"title\": \"Tracking number\",\n \"description\": \"The tracking number associated with the order.\"\n },\n \"tracking_carrier\": {\n \"type\": \"string\",\n \"title\": \"Tracking carrier\",\n \"description\": \"The tracking carrier associated with the order.\"\n },\n \"tracking_url\": {\n \"type\": \"string\",\n \"title\": \"Tracking URL\",\n \"description\": \"The tracking URL associated with the order.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdOrdersId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_order_in_ecommerce_store",
+ "description": {
+ "tagline": "Delete an order from an eCommerce store.",
+ "detailed": "Use this tool to delete a specific order from an eCommerce store in Mailchimp by providing the store ID and order ID."
+ },
+ "return_annotation": "Confirmation of order deletion in the specified store.",
+ "arguments": [
+ {
+ "name": "ecommerce_store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the eCommerce store from which the order will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "order_identifier",
+ "order_key"
+ ],
+ "description": "The unique identifier for the order to delete within the store.",
+ "endpoint_argument_name": "order_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete order",
+ "description": "Delete an order.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdOrdersIdLines",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_order_line_items",
+ "description": {
+ "tagline": "Retrieve information about order line items.",
+ "detailed": "Use this tool to get detailed information about line items in a specific order from an e-commerce store linked to Mailchimp."
+ },
+ "return_annotation": "Details about an order's line items.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "store_reference"
+ ],
+ "description": "The unique identifier for the store. Used to specify which store's order line items to retrieve.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "order_identifier",
+ "order_reference"
+ ],
+ "description": "The unique identifier for the order within the store. Required to specify which order's line items to retrieve.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "record_count",
+ "return_limit"
+ ],
+ "description": "Specify the number of line item records to return, between 1 and 1000. Default is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "record_offset"
+ ],
+ "description": "Number of records to skip for pagination, default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}/lines",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List order line items",
+ "description": "Get information about an order's line items.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdOrdersIdLines",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_order_line_item",
+ "description": {
+ "tagline": "Add a new line item to an existing order.",
+ "detailed": "Use this tool to add a new product line to an existing order in an ecommerce store. Ideal for updating orders with additional items, changing quantities, or modifying product details."
+ },
+ "return_annotation": "Confirmation of the newly added line item to the order.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_number",
+ "store_key"
+ ],
+ "description": "The unique identifier for the store where the order is placed.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "order_identifier",
+ "order_key"
+ ],
+ "description": "The unique identifier for the order in the store, used to specify which order to update.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "order_line_item_details",
+ "alternative_names": [
+ "new_line_item_details",
+ "line_item_info"
+ ],
+ "description": "JSON details of the new order line item, including product and quantity information.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}/lines",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add order line item",
+ "description": "Add a new line item to an existing order.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ },
+ "required": [
+ "id",
+ "title"
+ ]
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "id",
+ "url"
+ ]
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "description": "The date and time the product was published.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ },
+ "required": [
+ "id",
+ "title",
+ "variants"
+ ]
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "required": [
+ "id",
+ "product_id",
+ "product_variant_id",
+ "quantity",
+ "price"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Foreign ID\",\n \"description\": \"A unique identifier for the order line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"product\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\",\n \"title\",\n \"variants\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdOrdersIdLinesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_specific_order_line_item_info",
+ "description": {
+ "tagline": "Get details about a specific order line item.",
+ "detailed": "Use this tool to retrieve information about a specific order line item from an e-commerce store in Mailchimp. Useful for obtaining order details such as product name, quantity, price, etc., for a particular order line."
+ },
+ "return_annotation": "Information about a specific order line item.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the store. This is required to specify which store's data to retrieve.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "order_identifier",
+ "transaction_id"
+ ],
+ "description": "The unique identifier for the order within a store. Required to fetch details of the specific order line item.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "order_line_item_id",
+ "alternative_names": [
+ "line_item_id",
+ "order_line_id"
+ ],
+ "description": "The unique identifier for the line item in the order.",
+ "endpoint_argument_name": "line_id"
+ },
+ {
+ "name": "return_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "output_fields"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of specific fields to exclude from the response. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get order line item",
+ "description": "Get information about a specific order line item.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "line_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "description": "The id for the line item of an order.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdOrdersIdLinesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_order_line_item",
+ "description": {
+ "tagline": "Update a specific order line item.",
+ "detailed": "Use this tool to update details of a specific order line item in an e-commerce store. Useful for modifying existing order line items with new information or adjustments."
+ },
+ "return_annotation": "Confirmation of order line item update.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "store_reference"
+ ],
+ "description": "Unique identifier for the store where the order was placed.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "order_identifier",
+ "purchase_id"
+ ],
+ "description": "The unique identifier for the order within the store. Required to specify which order is being updated.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "line_item_id",
+ "alternative_names": [
+ "item_line_id",
+ "order_line_id"
+ ],
+ "description": "The unique identifier for the line item within an order in a store.",
+ "endpoint_argument_name": "line_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "product_unique_id",
+ "product_id_ref"
+ ],
+ "description": "A unique identifier for the product associated with the order line item.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "alternative_names": [
+ "product_variant_identifier",
+ "variant_id"
+ ],
+ "description": "A unique identifier for the product variant associated with the order line item. This is required to specify the variant of the product being referenced.",
+ "endpoint_argument_name": "product_variant_id"
+ },
+ {
+ "name": "order_line_item_quantity",
+ "alternative_names": [
+ "line_item_quantity",
+ "order_item_quantity"
+ ],
+ "description": "Specify the quantity of the order line item to be updated.",
+ "endpoint_argument_name": "quantity"
+ },
+ {
+ "name": "order_line_item_price",
+ "alternative_names": [
+ "line_item_price",
+ "item_price"
+ ],
+ "description": "Specify the updated price for the order line item. This should be a numerical value reflecting the new cost of the item.",
+ "endpoint_argument_name": "price"
+ },
+ {
+ "name": "line_item_discount_amount",
+ "alternative_names": [
+ "order_line_discount",
+ "discount_amount"
+ ],
+ "description": "The total discount amount applied to this line item in the order. Provide as a numerical value.",
+ "endpoint_argument_name": "discount"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update order line item",
+ "description": "Update a specific order line item.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "line_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "description": "The id for the line item of an order.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "description": "A unique identifier for the product associated with the order line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "product_variant_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "description": "A unique identifier for the product variant associated with the order line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "quantity",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "description": "The quantity of an order line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "price",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "description": "The price of an order line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "discount",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ },
+ "description": "The total discount amount applied to this line item.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdOrdersIdLinesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_order_line_item",
+ "description": {
+ "tagline": "Delete a specific order line item.",
+ "detailed": "Call this tool to delete a specific line item from an order within an e-commerce store in Mailchimp. The tool should be used when a user needs to remove an item from an order completely."
+ },
+ "return_annotation": "Confirmation of order line item deletion.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "store_key"
+ ],
+ "description": "Unique identifier for the store from which the order line item will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "alternative_names": [
+ "order_identifier",
+ "order_reference"
+ ],
+ "description": "The unique identifier for the order within a store. This is required to delete a line item from the specified order.",
+ "endpoint_argument_name": "order_id"
+ },
+ {
+ "name": "order_line_item_id",
+ "alternative_names": [
+ "line_item_id",
+ "order_line_id"
+ ],
+ "description": "The unique identifier for the line item of an order to be deleted.",
+ "endpoint_argument_name": "line_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete order line item",
+ "description": "Delete a specific order line item.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "order_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "description": "The id for the order in a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "line_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "description": "The id for the line item of an order.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdProducts",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_store_products_info",
+ "description": {
+ "tagline": "Get information about a store's products from Mailchimp.",
+ "detailed": "This tool retrieves detailed information about products in a specified ecommerce store using Mailchimp's marketing API. It should be called when information about a store's inventory is needed."
+ },
+ "return_annotation": "Information about the products in a store.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the store whose product information is being retrieved.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "return_fields_list",
+ "alternative_names": [
+ "fields_to_fetch",
+ "fields_to_return"
+ ],
+ "description": "A comma-separated list of specific fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_product_fields",
+ "exclude_attributes"
+ ],
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "max_records"
+ ],
+ "description": "Specify the number of product records to return, from 1 to 1000. The default value is 10.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "collection_skip_count"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/products",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List product",
+ "description": "Get information about a store's products.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdProducts",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_product_to_store",
+ "description": {
+ "tagline": "Add a new product to a Mailchimp store.",
+ "detailed": "Use this tool to add a new product to a specific store in Mailchimp. This is useful for updating store inventories or launching new products."
+ },
+ "return_annotation": "Details of the newly added product to the store.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The unique identifier of the store where the product will be added. This is required to specify the target store.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_details",
+ "alternative_names": [
+ "product_info",
+ "new_product_data"
+ ],
+ "description": "A JSON object containing details about the product to be added, including id, title, handle, URL, description, type, vendor, image, variants, images, and publish date.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/products",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add product",
+ "description": "Add a new product to a store.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ },
+ "required": [
+ "id",
+ "title"
+ ]
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "id",
+ "url"
+ ]
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "description": "The date and time the product was published.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ },
+ "required": [
+ "id",
+ "title",
+ "variants"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\",\n \"title\",\n \"variants\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdProductsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_product_info",
+ "description": {
+ "tagline": "Get information about a specific product from an ecommerce store.",
+ "detailed": "Use this tool to retrieve detailed information on a specific product from a specified ecommerce store, identified by store and product IDs."
+ },
+ "return_annotation": "Information about a specific product.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "retail_id"
+ ],
+ "description": "The unique identifier for the store from which to retrieve the product information.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "store_product_id",
+ "item_id"
+ ],
+ "description": "The unique identifier for the product within a store. This ID is required to fetch specific product details.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "selected_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_specific_fields"
+ ],
+ "description": "Comma-separated fields to exclude in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get product info",
+ "description": "Get information about a specific product.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdProductsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_product_info",
+ "description": {
+ "tagline": "Update details of a specific product in a store.",
+ "detailed": "This tool updates information for a specific product in an e-commerce store. Call this tool when you need to modify product details, such as name, description, or price, for a particular store."
+ },
+ "return_annotation": "Details of the updated product.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "store_key"
+ ],
+ "description": "The identifier for the specific store whose product details are being updated.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "product_id_value",
+ "store_product_id"
+ ],
+ "description": "The unique identifier for the product within a store. Required for updating product details.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_update_data",
+ "alternative_names": [
+ "product_details",
+ "update_info_payload"
+ ],
+ "description": "JSON object containing product details to update, such as title, description, price, variants, and images.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update product",
+ "description": "Update a specific product.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "description": "The date and time the product was published in ISO 8601 format.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "putEcommerceStoresIdProductsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_ecommerce_product",
+ "description": {
+ "tagline": "Update a specific product in an ecommerce store.",
+ "detailed": "Use this tool to update details of a specific product in an ecommerce store. It is useful when you need to modify product information such as pricing, inventory, or descriptions."
+ },
+ "return_annotation": "Information on the updated product.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "store_key"
+ ],
+ "description": "The unique identifier of the store to update the product in.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "product_identifier",
+ "store_product_id"
+ ],
+ "description": "The unique identifier for the product within a store. This is used to specify which product needs to be updated.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "ecommerce_product_update_data",
+ "alternative_names": [
+ "product_update_payload",
+ "product_update_request"
+ ],
+ "description": "JSON object containing details to update a product, including ID, title, and variants.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PUT",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Create or update product",
+ "description": "Update a specific product.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ },
+ "required": [
+ "id",
+ "title"
+ ]
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "id",
+ "url"
+ ]
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "description": "The date and time the product was published.",
+ "format": "date-time",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdProductsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_ecommerce_product",
+ "description": {
+ "tagline": "Delete a product from an eCommerce store.",
+ "detailed": "Use this tool to delete a specific product from a given eCommerce store in Mailchimp. It should be called when you want to remove a product based on its store and product ID."
+ },
+ "return_annotation": "Confirmation of product deletion from the store.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_id",
+ "retail_id"
+ ],
+ "description": "The unique identifier of the eCommerce store from which the product will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "item_id",
+ "ecommerce_product_id"
+ ],
+ "description": "The unique identifier for the product to delete from a store.",
+ "endpoint_argument_name": "product_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete product",
+ "description": "Delete a product.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdProductsIdVariants",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_product_variants_info",
+ "description": {
+ "tagline": "Retrieve information on product variants from a store.",
+ "detailed": "Use this tool to obtain detailed information about the variants of a specific product in an e-commerce store. Ideal for cases where users need to know different versions or options available for a product."
+ },
+ "return_annotation": "Details about a product's variants.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store. Required to fetch product variant data.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "item_id",
+ "product_key"
+ ],
+ "description": "The unique identifier for the product within the store.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "fields_selection"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "omit_fields_list",
+ "exclude_field_names"
+ ],
+ "description": "Specify fields to exclude using a comma-separated list. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "variant_records_count",
+ "records_limit"
+ ],
+ "description": "Specify the number of product variant records to return, default is 10, max is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_skip_count",
+ "pagination_skip_records"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/variants",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List product variants",
+ "description": "Get information about a product's variants.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdProductsIdVariants",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_product_variant_mailchimp",
+ "description": {
+ "tagline": "Add a new variant to an existing product in Mailchimp.",
+ "detailed": "This tool is used to add a new variant to an existing product within a specific store on Mailchimp. Use this when you need to add, update, or expand product options such as sizes or colors within your Mailchimp store."
+ },
+ "return_annotation": "Confirmation of the added product variant.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_input",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the store where the product variant will be added.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "store_product_id",
+ "product_identifier"
+ ],
+ "description": "The ID for the product within a store to which a new variant will be added.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_details",
+ "alternative_names": [
+ "new_variant_data",
+ "variant_information"
+ ],
+ "description": "JSON object containing details for the new product variant, including id, title, sku, price, and more.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/variants",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add product variant",
+ "description": "Add a new variant to the product.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ },
+ "required": [
+ "id",
+ "title"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdProductsIdVariantsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_product_variant_info",
+ "description": {
+ "tagline": "Retrieve information on a specific product variant.",
+ "detailed": "Call this tool to get detailed information about a specific product variant in an e-commerce store. Useful for fetching variant details such as size, color, price, or stock status from a specified store's product."
+ },
+ "return_annotation": "Detailed information about a specific product variant.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_identifier",
+ "store_identifier"
+ ],
+ "description": "The unique identifier for the store to query the product variant details.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "store_product_id",
+ "product_identifier"
+ ],
+ "description": "The ID of the product in the specified store. Required to retrieve variant details.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "alternative_names": [
+ "variant_identifier",
+ "variant_details_id"
+ ],
+ "description": "The unique identifier for the product variant in the store.",
+ "endpoint_argument_name": "variant_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "requested_fields"
+ ],
+ "description": "A comma-separated list of product variant fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get product variant info",
+ "description": "Get information about a specific product variant.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "variant_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "description": "The id for the product variant.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "putEcommerceStoresIdProductsIdVariantsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_product_variant",
+ "description": {
+ "tagline": "Add or update a product variant in an ecommerce store.",
+ "detailed": "Use this tool to add a new product variant or update an existing one in a specified ecommerce store."
+ },
+ "return_annotation": "Details of the updated product variant.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "ecommerce_store_id",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the ecommerce store.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "product_id_value",
+ "product_reference_id"
+ ],
+ "description": "The unique identifier for the product in the store. This ID is used to specify which product's variant is being added or updated.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "alternative_names": [
+ "variant_identifier",
+ "variant_key"
+ ],
+ "description": "The unique identifier for the product variant to be updated or added.",
+ "endpoint_argument_name": "variant_id"
+ },
+ {
+ "name": "product_variant_details",
+ "alternative_names": [
+ "variant_data",
+ "product_variant_info"
+ ],
+ "description": "A JSON object containing details for the product variant, like 'id', 'title', 'url', 'sku', 'price', 'inventory_quantity', 'image_url', 'backorders', and 'visibility'.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PUT",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add or update product variant",
+ "description": "Add or update a product variant.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "variant_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "description": "The id for the product variant.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ },
+ "required": [
+ "id",
+ "title"
+ ]
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdProductsIdVariantsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "modify_product_variant",
+ "description": {
+ "tagline": "Update a product variant in an e-commerce store.",
+ "detailed": "Use this tool to update the details of a specific product variant in a designated e-commerce store. This is useful for changing attributes of a variant, such as pricing, stock level, or other details."
+ },
+ "return_annotation": "Confirmation of the product variant update.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "A unique identifier for the store where the product variant will be updated. Must be a string.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "product_unique_id",
+ "store_product_id"
+ ],
+ "description": "The unique identifier for a product in a store.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "alternative_names": [
+ "variant_identifier",
+ "product_variant_identifier"
+ ],
+ "description": "The ID for the product variant to be updated.",
+ "endpoint_argument_name": "variant_id"
+ },
+ {
+ "name": "product_variant_details",
+ "alternative_names": [
+ "variant_update_details",
+ "variant_modification_info"
+ ],
+ "description": "JSON object containing product variant details to be updated, such as title, URL, SKU, price, inventory quantity, image URL, backorders, and visibility.",
+ "endpoint_argument_name": "requestBody"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update product variant",
+ "description": "Update a product variant.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "variant_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "description": "The id for the product variant.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "requestBody",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "description": "",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdProductsIdVariantsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_product_variant",
+ "description": {
+ "tagline": "Delete a product variant from an ecommerce store.",
+ "detailed": "Use this tool to delete a specific product variant in an ecommerce store on Mailchimp. Ideal for managing product inventories by removing obsolete or discontinued variants."
+ },
+ "return_annotation": "Confirmation of product variant deletion.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_key",
+ "store_reference"
+ ],
+ "description": "The unique identifier for the store from which the product variant will be deleted.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "product_identifier",
+ "product_reference_id"
+ ],
+ "description": "The unique identifier for the product within a store to which the variant belongs.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "alternative_names": [
+ "variant_identifier",
+ "product_variant_key"
+ ],
+ "description": "The identifier for the product variant to be deleted from the store.",
+ "endpoint_argument_name": "variant_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete product variant",
+ "description": "Delete a product variant.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "variant_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "description": "The id for the product variant.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdProductsIdImages",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_product_images",
+ "description": {
+ "tagline": "Retrieve information about a product's images.",
+ "detailed": "Call this tool to obtain details about images associated with a specific product in an e-commerce store."
+ },
+ "return_annotation": "Information about a product's images.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "shop_id"
+ ],
+ "description": "The unique identifier for the e-commerce store.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "product_id_number",
+ "store_product_id"
+ ],
+ "description": "The unique identifier for a product in a specific store. Required to retrieve product image details.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "images_count"
+ ],
+ "description": "Specify the number of product image records to return, ranging from 1 to 1000. Defaults to 10 if not provided.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "record_skip_count",
+ "pagination_skip_number"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/images",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "List product images",
+ "description": "Get information about a product's images.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "postEcommerceStoresIdProductsIdImages",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_product_image",
+ "description": {
+ "tagline": "Add a new image to a specific product.",
+ "detailed": "This tool is used to add a new image to an existing product in a store's e-commerce catalog. It should be called when you need to update the product's visual information by uploading an additional image."
+ },
+ "return_annotation": "Confirmation of image addition to the product.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "shop_id",
+ "retailer_id"
+ ],
+ "description": "The unique identifier for the store where the product is hosted. Required to specify which store's catalog you are updating.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "item_id",
+ "product_identifier"
+ ],
+ "description": "The unique identifier for the product in the store. Required to specify which product the image will be added to.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "alternative_names": [
+ "image_unique_id",
+ "image_id"
+ ],
+ "description": "A unique identifier for the product image to be added.",
+ "endpoint_argument_name": "id"
+ },
+ {
+ "name": "product_image_url",
+ "alternative_names": [
+ "image_url",
+ "picture_link"
+ ],
+ "description": "The URL of the image to be added to the product.",
+ "endpoint_argument_name": "url"
+ },
+ {
+ "name": "product_variant_ids",
+ "alternative_names": [
+ "variant_identifiers",
+ "image_variant_list"
+ ],
+ "description": "List of product variant IDs using the image.",
+ "endpoint_argument_name": "variant_ids"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/images",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Add product image",
+ "description": "Add a new image to the product.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "description": "A unique identifier for the product image.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "url",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "description": "The URL for a product image.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "schema_required": true
+ },
+ {
+ "name": "variant_ids",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ },
+ "description": "The list of product variants using the image.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getEcommerceStoresIdProductsIdImagesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_product_image_info",
+ "description": {
+ "tagline": "Retrieve details of a specific product image in an eCommerce store.",
+ "detailed": "Use this tool to get information about a specific image associated with a product in an eCommerce store. Ideal for obtaining image metadata or details for display or analysis purposes."
+ },
+ "return_annotation": "Information about a specific product image.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "shop_id",
+ "retailer_id"
+ ],
+ "description": "The unique identifier of the store. Used to specify the store whose product image information is to be retrieved.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "product_id_number",
+ "product_unique_id"
+ ],
+ "description": "The unique identifier for the product in the store.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "alternative_names": [
+ "image_identifier",
+ "product_image_identifier"
+ ],
+ "description": "The unique identifier for the product image to retrieve details about.",
+ "endpoint_argument_name": "image_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "include_fields_list",
+ "requested_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_omit",
+ "excluded_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Get product image info",
+ "description": "Get information about a specific product image.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "image_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "description": "The id for the product image.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "patchEcommerceStoresIdProductsIdImagesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "update_product_image_mailchimp",
+ "description": {
+ "tagline": "Update a product image in an e-commerce store.",
+ "detailed": "This tool updates a specific product image within a Mailchimp e-commerce store. Use it when you need to modify an image associated with a product in a store managed by Mailchimp."
+ },
+ "return_annotation": "Information about the updated product image.",
+ "arguments": [
+ {
+ "name": "store_id",
+ "alternative_names": [
+ "store_identifier",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the e-commerce store.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "alternative_names": [
+ "ecommerce_product_id",
+ "store_product_id"
+ ],
+ "description": "The unique identifier for a product in the store. Used to specify which product's image should be updated.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "alternative_names": [
+ "image_id_reference",
+ "product_picture_id"
+ ],
+ "description": "The unique identifier for the product image to update.",
+ "endpoint_argument_name": "image_id"
+ },
+ {
+ "name": "product_image_unique_id",
+ "alternative_names": [
+ "image_unique_identifier",
+ "product_image_id"
+ ],
+ "description": "A unique identifier for a specific product image to be updated in the store.",
+ "endpoint_argument_name": "id"
+ },
+ {
+ "name": "product_image_url",
+ "alternative_names": [
+ "image_url",
+ "product_image_link"
+ ],
+ "description": "The URL of the product image to be updated.",
+ "endpoint_argument_name": "url"
+ },
+ {
+ "name": "variant_ids",
+ "alternative_names": [
+ "product_variant_ids",
+ "image_variant_ids"
+ ],
+ "description": "A list of product variant IDs associated with the image. Each variant ID should be a string.",
+ "endpoint_argument_name": "variant_ids"
+ }
+ ]
+ },
+ "method": "PATCH",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Update product image",
+ "description": "Update a product image.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "image_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "description": "The id for the product image.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "description": "A unique identifier for the product image.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "url",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "description": "The URL for a product image.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "schema_required": false
+ },
+ {
+ "name": "variant_ids",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ },
+ "description": "The list of product variants using the image.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "schema_required": false
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteEcommerceStoresIdProductsIdImagesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_product_image",
+ "description": {
+ "tagline": "Delete an image from a product in an e-commerce store.",
+ "detailed": "This tool deletes a specified image from a product within an e-commerce store, identified by store, product, and image IDs. It should be called when a product image needs to be removed from a store's inventory."
+ },
+ "return_annotation": "Confirmation of image deletion from a product.",
+ "arguments": [
+ {
+ "name": "store_identifier",
+ "alternative_names": [
+ "store_id_value",
+ "ecommerce_store_id"
+ ],
+ "description": "The unique identifier for the e-commerce store.",
+ "endpoint_argument_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "alternative_names": [
+ "product_identifier",
+ "store_product_id"
+ ],
+ "description": "The unique ID for the product in the store from which the image will be deleted.",
+ "endpoint_argument_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "alternative_names": [
+ "image_identifier",
+ "product_image_identifier"
+ ],
+ "description": "The unique identifier for the product image to be deleted from the store's inventory.",
+ "endpoint_argument_name": "image_id"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}",
+ "tags": [
+ "ecommerce"
+ ],
+ "summary": "Delete product image",
+ "description": "Delete a product image.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "store_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "description": "The store id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "product_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "description": "The id for the product of a store.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "image_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "description": "The id for the product image.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getSearchCampaigns",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "search_mailchimp_campaigns",
+ "description": {
+ "tagline": "Search for email campaigns using query terms.",
+ "detailed": "Use this tool to search all Mailchimp email campaigns that match specific query terms. This can help find campaigns based on certain criteria or keywords."
+ },
+ "return_annotation": "Retrieved campaign details matching the search query.",
+ "arguments": [
+ {
+ "name": "search_query",
+ "alternative_names": [
+ "query_string",
+ "filter_terms"
+ ],
+ "description": "The terms used to filter and search Mailchimp campaigns.",
+ "endpoint_argument_name": "query"
+ },
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "return_fields",
+ "fields_to_include"
+ ],
+ "description": "Specify the fields to return as a comma-separated list. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_campaign_fields",
+ "alternative_names": [
+ "fields_to_exclude",
+ "omit_campaign_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude from the search results. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/search-campaigns",
+ "tags": [
+ "searchCampaigns"
+ ],
+ "summary": "Search campaigns",
+ "description": "Search all campaigns for the specified query terms.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "query",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter results."
+ },
+ "description": "The search query used to filter results.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getSearchMembers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "search_mailchimp_members",
+ "description": {
+ "tagline": "Search for Mailchimp list members across lists.",
+ "detailed": "Search for list members in Mailchimp. This can be restricted to a specific list or used to search across all lists in an account."
+ },
+ "return_annotation": "Details of Mailchimp list members matching search criteria.",
+ "arguments": [
+ {
+ "name": "search_query",
+ "alternative_names": [
+ "filter_query",
+ "member_search_string"
+ ],
+ "description": "The search query to filter list members by email, first name, or last name.",
+ "endpoint_argument_name": "query"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "return_fields_list",
+ "specific_fields_output"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_attributes"
+ ],
+ "description": "A comma-separated list specifying which fields to exclude from results. Use dot notation for sub-object references.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "list_unique_id",
+ "alternative_names": [
+ "mailchimp_list_id",
+ "list_identifier"
+ ],
+ "description": "The unique identifier for a Mailchimp list to restrict the search. Use this to specify a particular list.",
+ "endpoint_argument_name": "list_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/search-members",
+ "tags": [
+ "searchMembers"
+ ],
+ "summary": "Search members",
+ "description": "Search for list members. This search can be restricted to a specific list, or can be used to search across all lists in an account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "query",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter results. Query should be a valid email, or a string representing a contact's first or last name."
+ },
+ "description": "The search query used to filter results. Query should be a valid email, or a string representing a contact's first or last name.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "list_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the list."
+ },
+ "description": "The unique id for the list.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getPing",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "check_mailchimp_api_health",
+ "description": {
+ "tagline": "Checks the health status of the Mailchimp API.",
+ "detailed": "Use this tool to verify the operational status of the Mailchimp Marketing API and ensure it's running without issues. This check does not return account-specific data."
+ },
+ "return_annotation": "Health status message of the Mailchimp API.",
+ "arguments": []
+ },
+ "method": "GET",
+ "path": "/ping",
+ "tags": [
+ "ping"
+ ],
+ "summary": "Ping",
+ "description": "A health check for the API that won't return any account-specific information.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getAllFacebookAds",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_facebook_ads_list",
+ "description": {
+ "tagline": "Retrieve a list of Facebook ads from Mailchimp.",
+ "detailed": "Use this tool to obtain a list of Facebook ads managed within Mailchimp. Ideal for getting an overview of current ad campaigns."
+ },
+ "return_annotation": "List of Facebook ads.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "include_fields"
+ ],
+ "description": "A comma-separated list of specific fields to return in the response. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude. Utilize dot notation for sub-object fields.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "records_count",
+ "alternative_names": [
+ "number_of_records",
+ "ads_count"
+ ],
+ "description": "Specify the number of Facebook ad records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "result_offset",
+ "record_skip_count"
+ ],
+ "description": "The number of records to skip for pagination, with a default of 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "sort_by_field",
+ "alternative_names": [
+ "order_by_field",
+ "sort_field_name"
+ ],
+ "description": "Specify the field by which to sort the Facebook ads.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_direction",
+ "alternative_names": [
+ "order_direction",
+ "direction_of_sorting"
+ ],
+ "description": "Specifies the sorting order: 'asc' for ascending or 'desc' for descending.",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/facebook-ads",
+ "tags": [
+ "facebookAds"
+ ],
+ "summary": "List facebook ads",
+ "description": "Get list of Facebook ads.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getFacebookAdsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_facebook_ad_details",
+ "description": {
+ "tagline": "Retrieve details of a specific Facebook ad campaign.",
+ "detailed": "Use this tool to fetch detailed information about a specific Facebook ad by providing its outreach ID. This can be helpful for tracking ad performance or reviewing campaign specifics."
+ },
+ "return_annotation": "Details of a specified Facebook ad.",
+ "arguments": [
+ {
+ "name": "facebook_ad_outreach_id",
+ "alternative_names": [
+ "ad_outreach_identifier",
+ "facebook_ad_id"
+ ],
+ "description": "The unique outreach ID of the Facebook ad to retrieve details for.",
+ "endpoint_argument_name": "outreach_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of fields to return; use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "fields_to_omit",
+ "exclude_ad_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/facebook-ads/{outreach_id}",
+ "tags": [
+ "facebookAds"
+ ],
+ "summary": "Get facebook ad info",
+ "description": "Get details of a Facebook ad.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "outreach_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "description": "The outreach id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingFacebookAds",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_facebook_ads_reports",
+ "description": {
+ "tagline": "Get reports of Facebook ads for marketing analysis.",
+ "detailed": "Use this tool to retrieve detailed reports of Facebook ads data, which can be essential for analyzing marketing campaigns and performance metrics."
+ },
+ "return_annotation": "Facebook ads reporting data.",
+ "arguments": [
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "requested_fields"
+ ],
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "leave_out_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude in the report. Use dot notation for sub-objects if needed.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "alternative_names": [
+ "number_of_records",
+ "records_limit"
+ ],
+ "description": "Specify the number of Facebook ads records to return. Default is 10, maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "records_skip_count",
+ "pagination_skip_number"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "sorting_field_for_results",
+ "alternative_names": [
+ "order_by_field",
+ "results_sort_field"
+ ],
+ "description": "Specifies the field by which to sort the Facebook ads report results.",
+ "endpoint_argument_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "alternative_names": [
+ "sorting_direction",
+ "order_direction"
+ ],
+ "description": "Specifies the order direction for sorting results. Use 'asc' for ascending and 'desc' for descending.",
+ "endpoint_argument_name": "sort_dir"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/facebook-ads",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "List facebook ads reports",
+ "description": "Get reports of Facebook ads.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_dir",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "description": "Determines the order direction for sorted results.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingFacebookAdsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_facebook_ad_report",
+ "description": {
+ "tagline": "Get report details of a Facebook ad campaign.",
+ "detailed": "Use this tool to retrieve detailed reports of a specific Facebook advertisement managed through Mailchimp. This is useful for analyzing ad performance and outreach impact."
+ },
+ "return_annotation": "Report details of a specific Facebook ad campaign.",
+ "arguments": [
+ {
+ "name": "outreach_id",
+ "alternative_names": [
+ "ad_campaign_id",
+ "facebook_outreach_id"
+ ],
+ "description": "The unique identifier for the Facebook ad campaign to retrieve the report for.",
+ "endpoint_argument_name": "outreach_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "select_fields",
+ "fields_to_return"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "exclude_fields_list"
+ ],
+ "description": "List of fields to exclude from the report, using comma-separated values. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/facebook-ads/{outreach_id}",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "Get facebook ad report",
+ "description": "Get report of a Facebook ad.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "outreach_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "description": "The outreach id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingFacebookAdsIdEcommerceProductActivity",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_facebook_ads_product_activity",
+ "description": {
+ "tagline": "Retrieve product activity breakdown for a Facebook ads outreach.",
+ "detailed": "This tool provides a breakdown of ecommerce product activity for a specific Facebook ads outreach campaign. It should be called when detailed analytics of product performance related to a Facebook ad outreach is needed."
+ },
+ "return_annotation": "Breakdown of product activity for a specified outreach.",
+ "arguments": [
+ {
+ "name": "outreach_id",
+ "alternative_names": [
+ "campaign_id",
+ "ads_outreach_id"
+ ],
+ "description": "The unique identifier for the Facebook ads outreach campaign to retrieve the product activity breakdown.",
+ "endpoint_argument_name": "outreach_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "requested_fields",
+ "return_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_count",
+ "return_records_quantity"
+ ],
+ "description": "The number of records to return. Default is 10. Maximum is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "skip_records",
+ "record_offset"
+ ],
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ },
+ {
+ "name": "sort_by_field",
+ "alternative_names": [
+ "field_sort",
+ "order_by"
+ ],
+ "description": "Specify the field to sort the returned records by, using the field name.",
+ "endpoint_argument_name": "sort_field"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/facebook-ads/{outreach_id}/ecommerce-product-activity",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "List facebook ecommerce report",
+ "description": "Get breakdown of product activity for an outreach.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "sort_field",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "description": "Returns files sorted by the specified field.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "outreach_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "description": "The outreach id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingLandingPagesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_landing_page_report",
+ "description": {
+ "tagline": "Retrieve the report for a specific landing page.",
+ "detailed": "Use this tool to get detailed reports on specific landing pages via their ID. Useful for analyzing landing page performance and metrics."
+ },
+ "return_annotation": "Landing page report details for a specific page.",
+ "arguments": [
+ {
+ "name": "landing_page_outreach_id",
+ "alternative_names": [
+ "landing_page_id",
+ "report_outreach_id"
+ ],
+ "description": "The outreach ID for the landing page you want to retrieve the report for.",
+ "endpoint_argument_name": "outreach_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "selected_fields"
+ ],
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_report_fields",
+ "alternative_names": [
+ "omit_report_fields",
+ "leave_out_report_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the landing page report. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/landing-pages/{outreach_id}",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "Get landing page report",
+ "description": "Get report of a landing page.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "outreach_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "description": "The outreach id.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingLandingPages",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_landing_page_reports",
+ "description": {
+ "tagline": "Retrieve reports of landing pages from Mailchimp.",
+ "detailed": "Use this tool to get detailed analytics and reports on landing pages set up in Mailchimp. Ideal for understanding performance metrics and engagement data."
+ },
+ "return_annotation": "Landing page report data.",
+ "arguments": [
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_return",
+ "desired_fields"
+ ],
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "skip_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "alternative_names": [
+ "records_limit",
+ "results_count"
+ ],
+ "description": "Specify the number of records to return, from 1 to 1000. Defaults to 10 if not provided.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "records_to_skip",
+ "alternative_names": [
+ "pagination_offset",
+ "skip_count"
+ ],
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/landing-pages",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "List landing pages reports",
+ "description": "Get reports of landing pages.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingSurveys",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_reports",
+ "description": {
+ "tagline": "Retrieve detailed reports for marketing surveys.",
+ "detailed": "Use this tool to obtain detailed reports and insights from marketing surveys. Ideal for analyzing survey results and performance metrics."
+ },
+ "return_annotation": "Survey report details and insights.",
+ "arguments": [
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "report_fields",
+ "survey_report_fields"
+ ],
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from survey reports. Use dot notation for sub-object fields.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "alternative_names": [
+ "records_count",
+ "limit_records"
+ ],
+ "description": "The number of survey report records to return. Defaults to 10. Max value is 1000.",
+ "endpoint_argument_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "alternative_names": [
+ "record_skip_count",
+ "pagination_start_index"
+ ],
+ "description": "Number of records to skip for pagination, default is 0.",
+ "endpoint_argument_name": "offset"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/surveys",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "List survey reports",
+ "description": "Get reports for surveys.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "count",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "offset",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingSurveysId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_report",
+ "description": {
+ "tagline": "Retrieve report details for a specific survey.",
+ "detailed": "Call this tool to get comprehensive report details for a specified survey. Use this to analyze survey responses and results."
+ },
+ "return_annotation": "Survey report details.",
+ "arguments": [
+ {
+ "name": "survey_id",
+ "alternative_names": [
+ "survey_identifier",
+ "survey_key"
+ ],
+ "description": "The unique ID of the survey to retrieve the report for.",
+ "endpoint_argument_name": "survey_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "included_fields",
+ "fields_list"
+ ],
+ "description": "A comma-separated list of fields to include in the survey report. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "alternative_names": [
+ "excluded_fields",
+ "omitted_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the survey report. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/surveys/{survey_id}",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "Get survey report",
+ "description": "Get report for a survey.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingSurveysIdQuestions",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_question_reports",
+ "description": {
+ "tagline": "Retrieve reports for survey questions by survey ID.",
+ "detailed": "Use this tool to obtain data regarding the responses to each question within a specific survey. Ideal for analyzing survey results and gaining insights."
+ },
+ "return_annotation": "Reports for the questions in a specific survey.",
+ "arguments": [
+ {
+ "name": "survey_identifier",
+ "alternative_names": [
+ "survey_id_code",
+ "survey_reference_id"
+ ],
+ "description": "The unique identifier for the survey to retrieve question reports.",
+ "endpoint_argument_name": "survey_id"
+ },
+ {
+ "name": "include_fields",
+ "alternative_names": [
+ "fields_to_include",
+ "return_fields"
+ ],
+ "description": "Comma-separated list of fields to return for survey questions. Use dot notation for sub-object parameters.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_report",
+ "alternative_names": [
+ "omit_fields_from_report",
+ "remove_fields_from_output"
+ ],
+ "description": "A comma-separated list of fields to exclude from the survey report. Use dot notation for nested fields.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/surveys/{survey_id}/questions",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "List survey question reports",
+ "description": "Get reports for survey questions.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingSurveysIdQuestionsId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_question_report",
+ "description": {
+ "tagline": "Get report data for a specific survey question.",
+ "detailed": "Use this tool to retrieve detailed report information for a specific question in a survey. Useful for analyzing responses and performance of survey questions."
+ },
+ "return_annotation": "Survey question report data.",
+ "arguments": [
+ {
+ "name": "survey_id",
+ "alternative_names": [
+ "survey_identifier",
+ "id_of_survey"
+ ],
+ "description": "The unique identifier for the survey. Required to retrieve specific survey question reports.",
+ "endpoint_argument_name": "survey_id"
+ },
+ {
+ "name": "survey_question_id",
+ "alternative_names": [
+ "question_identifier",
+ "survey_question_identifier"
+ ],
+ "description": "The unique ID of the survey question to get the report for.",
+ "endpoint_argument_name": "question_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "include_fields",
+ "fields_list"
+ ],
+ "description": "Comma-separated list of fields to return using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "alternative_names": [
+ "omit_fields",
+ "remove_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from the survey question report, using dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/surveys/{survey_id}/questions/{question_id}",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "Get survey question report",
+ "description": "Get report for a survey question.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "question_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey question."
+ },
+ "description": "The ID of the survey question.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingSurveysIdQuestionsIdAnswers",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_question_answers",
+ "description": {
+ "tagline": "Retrieve answers for a specific survey question.",
+ "detailed": "Use this tool to get answers for a particular question in a given survey. Useful for analyzing survey responses to specific questions within Mailchimp."
+ },
+ "return_annotation": "Answers for a specific survey question.",
+ "arguments": [
+ {
+ "name": "survey_identifier",
+ "alternative_names": [
+ "survey_id_code",
+ "survey_key"
+ ],
+ "description": "The unique identifier for the survey whose question answers are being retrieved.",
+ "endpoint_argument_name": "survey_id"
+ },
+ {
+ "name": "survey_question_id",
+ "alternative_names": [
+ "question_identifier",
+ "id_of_survey_question"
+ ],
+ "description": "The unique identifier for the survey question to retrieve answers from.",
+ "endpoint_argument_name": "question_id"
+ },
+ {
+ "name": "fields_to_return",
+ "alternative_names": [
+ "fields_list",
+ "fields_selection"
+ ],
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "alternative_names": [
+ "exclude_attributes",
+ "ignore_fields"
+ ],
+ "description": "Specify fields to exclude from the response using a comma-separated list. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "filter_by_respondent_familiarity",
+ "alternative_names": [
+ "familiarity_filter",
+ "respondent_familiarity_level"
+ ],
+ "description": "Filter survey responses based on the familiarity level of the respondents. Accepts a string value.",
+ "endpoint_argument_name": "respondent_familiarity_is"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/surveys/{survey_id}/questions/{question_id}/answers",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "List answers for question",
+ "description": "Get answers for a survey question.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "respondent_familiarity_is",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter survey responses by familiarity of the respondents."
+ },
+ "description": "Filter survey responses by familiarity of the respondents.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "question_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey question."
+ },
+ "description": "The ID of the survey question.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingSurveysIdResponses",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_responses",
+ "description": {
+ "tagline": "Retrieve responses to a specific survey.",
+ "detailed": "Use this tool to obtain responses from a specific survey when you have the survey ID."
+ },
+ "return_annotation": "Survey responses data.",
+ "arguments": [
+ {
+ "name": "survey_id",
+ "alternative_names": [
+ "survey_identifier",
+ "survey_unique_id"
+ ],
+ "description": "The unique identifier for the survey to retrieve responses for.",
+ "endpoint_argument_name": "survey_id"
+ },
+ {
+ "name": "included_fields",
+ "alternative_names": [
+ "return_fields",
+ "data_fields"
+ ],
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "fields"
+ },
+ {
+ "name": "exclude_survey_fields",
+ "alternative_names": [
+ "omit_survey_fields",
+ "ignore_survey_fields"
+ ],
+ "description": "A comma-separated list of fields to exclude from survey responses. Use dot notation for sub-objects.",
+ "endpoint_argument_name": "exclude_fields"
+ },
+ {
+ "name": "question_id",
+ "alternative_names": [
+ "answered_question_id",
+ "question_identifier"
+ ],
+ "description": "The ID of the question that was answered to filter responses.",
+ "endpoint_argument_name": "answered_question"
+ },
+ {
+ "name": "chosen_answer_id",
+ "alternative_names": [
+ "selected_option_id",
+ "answer_choice_id"
+ ],
+ "description": "The ID of the selected answer option to filter survey responses.",
+ "endpoint_argument_name": "chose_answer"
+ },
+ {
+ "name": "filter_by_respondent_familiarity",
+ "alternative_names": [
+ "respondent_familiarity_filter",
+ "survey_response_familiarity"
+ ],
+ "description": "Filter survey responses by respondents' familiarity level. Provide a familiarity string to narrow down results.",
+ "endpoint_argument_name": "respondent_familiarity_is"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/surveys/{survey_id}/responses",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "List survey responses",
+ "description": "Get responses to a survey.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [
+ {
+ "name": "fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "exclude_fields",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "answered_question",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the question that was answered."
+ },
+ "description": "The ID of the question that was answered.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "chose_answer",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the option chosen to filter responses on."
+ },
+ "description": "The ID of the option chosen to filter responses on.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "respondent_familiarity_is",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter survey responses by familiarity of the respondents."
+ },
+ "description": "Filter survey responses by familiarity of the respondents.",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "location": "query",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "path": [
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getReportingSurveysIdResponsesId",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_survey_response",
+ "description": {
+ "tagline": "Retrieve details of a specific survey response.",
+ "detailed": "Call this tool to get detailed information of a particular survey response using its survey and response IDs."
+ },
+ "return_annotation": "Single survey response details.",
+ "arguments": [
+ {
+ "name": "survey_id",
+ "alternative_names": [
+ "survey_identifier",
+ "survey_unique_id"
+ ],
+ "description": "The ID of the survey to retrieve the response from.",
+ "endpoint_argument_name": "survey_id"
+ },
+ {
+ "name": "survey_response_id",
+ "alternative_names": [
+ "response_identifier",
+ "survey_reply_id"
+ ],
+ "description": "The ID of the specific survey response to retrieve.",
+ "endpoint_argument_name": "response_id"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/reporting/surveys/{survey_id}/responses/{response_id}",
+ "tags": [
+ "reporting"
+ ],
+ "summary": "Get survey response",
+ "description": "Get a single survey response.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "survey_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "description": "The ID of the survey.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ },
+ {
+ "name": "response_id",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey response."
+ },
+ "description": "The ID of the survey response.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getVerifiedDomain",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_domain_details",
+ "description": {
+ "tagline": "Retrieve details for a specific verified domain.",
+ "detailed": "Use this tool to get the details of a single verified domain on your Mailchimp account. Useful for accessing domain-specific information."
+ },
+ "return_annotation": "Details of a specific verified domain on the account.",
+ "arguments": [
+ {
+ "name": "domain_name",
+ "alternative_names": [
+ "domain_identifier",
+ "domain_key"
+ ],
+ "description": "The domain name to retrieve details for. Must be a verified domain on the account.",
+ "endpoint_argument_name": "domain_name"
+ }
+ ]
+ },
+ "method": "GET",
+ "path": "/verified-domains/{domain_name}",
+ "tags": [
+ "verifiedDomains"
+ ],
+ "summary": "Get domain info",
+ "description": "Get the details for a single domain on the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "domain_name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "description": "The domain name.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "deleteVerifiedDomain",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "delete_verified_domain",
+ "description": {
+ "tagline": "Deletes a verified domain from your Mailchimp account.",
+ "detailed": "Use this tool to remove a domain that has been previously verified in your Mailchimp account. Ideal for situations where a domain is no longer needed or has ownership changes."
+ },
+ "return_annotation": "Confirmation of domain deletion from the account.",
+ "arguments": [
+ {
+ "name": "domain_name",
+ "alternative_names": [
+ "email_domain",
+ "verified_domain_name"
+ ],
+ "description": "The domain name to be deleted from your Mailchimp account.",
+ "endpoint_argument_name": "domain_name"
+ }
+ ]
+ },
+ "method": "DELETE",
+ "path": "/verified-domains/{domain_name}",
+ "tags": [
+ "verifiedDomains"
+ ],
+ "summary": "Delete domain",
+ "description": "Delete a verified domain from the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "domain_name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "description": "The domain name.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "verifyDomain",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "verify_sending_domain",
+ "description": {
+ "tagline": "Verify if a domain is authorized for sending emails.",
+ "detailed": "Use this tool to verify whether a specific domain is authorized for sending emails through Mailchimp. It should be called when you need to confirm the sending capabilities of a domain."
+ },
+ "return_annotation": "Domain verification status and details.",
+ "arguments": [
+ {
+ "name": "domain_name_to_verify",
+ "alternative_names": [
+ "sending_domain",
+ "domain_for_verification"
+ ],
+ "description": "The domain name you wish to verify for sending emails through Mailchimp.",
+ "endpoint_argument_name": "domain_name"
+ },
+ {
+ "name": "verification_code",
+ "alternative_names": [
+ "domain_verification_code",
+ "email_verification_code"
+ ],
+ "description": "The code sent to the provided email address for domain verification.",
+ "endpoint_argument_name": "code"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/verified-domains/{domain_name}/actions/verify",
+ "tags": [
+ "verifiedDomains"
+ ],
+ "summary": "Verify domain",
+ "description": "Verify a domain for sending.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [
+ {
+ "name": "domain_name",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "description": "The domain name.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "path",
+ "content_type": null,
+ "json_schema": null,
+ "schema_required": false
+ }
+ ],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "code",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The code that was sent to the email address provided when adding a new domain to verify."
+ },
+ "description": "The code that was sent to the email address provided when adding a new domain to verify.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Verification Code",
+ "description": "The code that was sent to the email address provided when adding a new domain to verify."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Verify a domain for sending.\",\n \"description\": \"Submit a response to the verification challenge and verify a domain for sending.\",\n \"required\": [\n \"code\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Verification Code\",\n \"description\": \"The code that was sent to the email address provided when adding a new domain to verify.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "getVerifiedDomains",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "get_verified_mailchimp_domains",
+ "description": {
+ "tagline": "Retrieve all verified sending domains for a Mailchimp account.",
+ "detailed": "This tool retrieves the list of all sending domains verified on a Mailchimp account. It should be called when users want to view their registered sending domains."
+ },
+ "return_annotation": "List of verified sending domains for the account.",
+ "arguments": []
+ },
+ "method": "GET",
+ "path": "/verified-domains",
+ "tags": [
+ "verifiedDomains"
+ ],
+ "summary": "List sending domains",
+ "description": "Get all of the sending domains on the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": []
+ },
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": false,
+ "base_url": null,
+ "original_servers": []
+ },
+ {
+ "name": "createVerifiedDomain",
+ "selected_for_wrapping": false,
+ "spec_built": true,
+ "wrap_finished": true,
+ "should_skip": false,
+ "skip_reason": null,
+ "wrapper_tool": {
+ "name": "add_verified_domain",
+ "description": {
+ "tagline": "Add a verified domain to your Mailchimp account.",
+ "detailed": "Use this tool to add a verified domain to your Mailchimp account. This is useful for managing communication and ensuring trust with your recipients."
+ },
+ "return_annotation": "Confirmation of domain addition to the account.",
+ "arguments": [
+ {
+ "name": "verification_email_address",
+ "alternative_names": [
+ "domain_verification_email",
+ "email_for_domain_verification"
+ ],
+ "description": "The email address at the domain to verify, which will receive a two-factor challenge for verification.",
+ "endpoint_argument_name": "verification_email"
+ }
+ ]
+ },
+ "method": "POST",
+ "path": "/verified-domains",
+ "tags": [
+ "verifiedDomains"
+ ],
+ "summary": "Add domain to account",
+ "description": "Add a domain to the account.",
+ "requires_security": true,
+ "oauth_scopes": [],
+ "security_schemes": [
+ "basicAuth"
+ ],
+ "parameters": {
+ "query": [],
+ "path": [],
+ "header": [],
+ "cookie": [],
+ "body": [
+ {
+ "name": "verification_email",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action."
+ },
+ "description": "The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action.",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "location": "body",
+ "content_type": "application/json",
+ "json_schema": {
+ "type": "string",
+ "title": "Verification Email",
+ "description": "The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action."
+ },
+ "schema_required": true
+ }
+ ]
+ },
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Verified Domains\",\n \"description\": \"The verified domains currently on the account.\",\n \"required\": [\n \"verification_email\"\n ],\n \"properties\": {\n \"verification_email\": {\n \"type\": \"string\",\n \"title\": \"Verification Email\",\n \"description\": \"The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "use_flatten_mode": true,
+ "base_url": null,
+ "original_servers": []
+ }
+ ],
+ "security_scheme_key_selected": null,
+ "security_scheme_selected": {}
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/moar/openapi.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/moar/openapi.json
new file mode 100644
index 00000000..5c97cafb
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/moar/openapi.json
@@ -0,0 +1,143163 @@
+{
+ "x-doc-structure": {
+ "resources": {
+ "root": {
+ "title": "API Root",
+ "description": "The API root resource links to all other resources available in the API. Calling the root directory also returns details about the Mailchimp user account.",
+ "paths": [
+ "/"
+ ],
+ "subResources": []
+ },
+ "chimp-chatter": {
+ "title": "Chimp Chatter Activity",
+ "description": "Get the latest Chimp Chatter activity from your account.",
+ "paths": [
+ "/activity-feed/chimp-chatter"
+ ]
+ },
+ "audiences": {
+ "title": "Audiences (BETA)",
+ "description": "Your Mailchimp audience is where you store and manage all of your omni-channel contacts. The Audiences Endpoints (BETA) is available for evaluation or testing purposes only, may contain bugs or errors, and may not be as reliable as other Mailchimp features. Intuit may modify or discontinue this feature at any time without notice. By accessing the endpoints you agree to the [Audiences Endpoints (BETA) Terms of Use](https://mailchimp.com/developer/marketing/docs/audiences-introduction). Consent must be accurately mapped to the supported marketing consent values. Unsupported values - including opt-outs - must be updated manually. See [Audiences Endpoints (BETA) Documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) for terms and additional details.",
+ "paths": [
+ "/audiences",
+ "/audiences/{audience_id}"
+ ],
+ "subResources": [
+ "audiences-contacts",
+ "audiences-contact-privacy-remove"
+ ]
+ },
+ "audiences-contacts": {
+ "title": "Contacts",
+ "description": "Manage contacts within a Mailchimp audience. The Audiences Endpoints (BETA) is available for evaluation or testing purposes only, may contain bugs or errors, and may not be as reliable as other Mailchimp features. Intuit may modify or discontinue this feature at any time without notice. By accessing the endpoints you agree to the [Audiences Endpoints (BETA) Terms of Use](https://mailchimp.com/developer/marketing/docs/audiences-introduction). Consent must be accurately mapped to the supported marketing consent values. Unsupported values - including opt-outs - must be updated manually. See [Audiences Endpoints (BETA) Documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) for terms and additional details.",
+ "paths": [
+ "/audiences/{audience_id}/contacts",
+ "/audiences/{audience_id}/contacts/{contact_id}",
+ "/audiences/{audience_id}/contacts/{contact_id}/actions/archive",
+ "/audiences/{audience_id}/contacts/{contact_id}/actions/forget"
+ ],
+ "subResources": [
+ "audiences-contacts-tags",
+ "audiences-contact-events"
+ ]
+ },
+ "authorized-apps": {
+ "title": "Authorized Apps",
+ "description": "Manage registered, connected apps for your Mailchimp account with the Authorized Apps endpoints.",
+ "paths": [
+ "/authorized-apps",
+ "/authorized-apps/{app_id}"
+ ]
+ },
+ "automation": {
+ "title": "Classic Automations",
+ "description": "Mailchimp's classic automations feature lets you build a series of emails that send to subscribers when triggered by a specific date, activity, or event. Use the API to manage workflows, emails, and queues for Classic Automations. Does not include Automation flows.",
+ "paths": [
+ "/automations",
+ "/automations/{workflow_id}",
+ "/automations/{workflow_id}/actions/start-all-emails",
+ "/automations/{workflow_id}/actions/pause-all-emails",
+ "/automations/{workflow_id}/actions/archive"
+ ],
+ "subResources": [
+ "automation-email",
+ "automation-removed-subscribers"
+ ]
+ },
+ "automation-email": {
+ "title": "Emails",
+ "description": "Manage individual emails in a classic automation workflow.",
+ "paths": [
+ "/automations/{workflow_id}/emails",
+ "/automations/{workflow_id}/emails/{workflow_email_id}",
+ "/automations/{workflow_id}/emails/{workflow_email_id}/actions/pause",
+ "/automations/{workflow_id}/emails/{workflow_email_id}/actions/start"
+ ],
+ "subResources": [
+ "automation-email-queue"
+ ]
+ },
+ "automation-email-queue": {
+ "title": "Queue",
+ "description": "Manage list member queues for classic automation emails.",
+ "paths": [
+ "/automations/{workflow_id}/emails/{workflow_email_id}/queue",
+ "/automations/{workflow_id}/emails/{workflow_email_id}/queue/{subscriber_hash}"
+ ],
+ "subResources": []
+ },
+ "automation-removed-subscribers": {
+ "title": "Removed Subscribers",
+ "description": "Remove subscribers from a classic automation workflow.",
+ "paths": [
+ "/automations/{workflow_id}/removed-subscribers",
+ "/automations/{workflow_id}/removed-subscribers/{subscriber_hash}"
+ ],
+ "subResources": []
+ },
+ "batch-operations": {
+ "title": "Batch Operations",
+ "description": "Use batch operations to complete multiple operations with a single call.",
+ "paths": [
+ "/batches",
+ "/batches/{batch_id}"
+ ]
+ },
+ "batch-webhooks": {
+ "title": "Batch Webhooks",
+ "description": "Manage webhooks for batch operations.",
+ "paths": [
+ "/batch-webhooks",
+ "/batch-webhooks/{batch_webhook_id}"
+ ]
+ },
+ "account-exports": {
+ "title": "Account Exports",
+ "description": "Generate a new account export or download a finished account export.",
+ "paths": [
+ "/account-exports",
+ "/account-exports/{export_id}"
+ ]
+ },
+ "campaigns": {
+ "title": "Campaigns",
+ "description": "Campaigns are how you send emails to your Mailchimp list. Use the Campaigns API calls to manage campaigns in your Mailchimp account.",
+ "paths": [
+ "/campaigns",
+ "/campaigns/{campaign_id}",
+ "/campaigns/{campaign_id}/actions/cancel-send",
+ "/campaigns/{campaign_id}/actions/send",
+ "/campaigns/{campaign_id}/actions/schedule",
+ "/campaigns/{campaign_id}/actions/unschedule",
+ "/campaigns/{campaign_id}/actions/pause",
+ "/campaigns/{campaign_id}/actions/resume",
+ "/campaigns/{campaign_id}/actions/replicate",
+ "/campaigns/{campaign_id}/actions/test",
+ "/campaigns/{campaign_id}/actions/create-resend"
+ ],
+ "subResources": [
+ "campaign-feedback",
+ "campaign-checklist",
+ "campaign-content"
+ ]
+ },
+ "campaign-feedback": {
+ "title": "Feedback",
+ "description": "Post comments, reply to team feedback, and send test emails while you're working together on a Mailchimp campaign.",
+ "paths": [
+ "/campaigns/{campaign_id}/feedback",
+ "/campaigns/{campaign_id}/feedback/{feedback_id}"
+ ]
+ },
+ "campaign-checklist": {
+ "title": "Send Checklist",
+ "description": "Review the send checklist for your campaign, and resolve any issues before sending.",
+ "paths": [
+ "/campaigns/{campaign_id}/send-checklist"
+ ]
+ },
+ "campaign-content": {
+ "title": "Content",
+ "description": "Manage the HTML, plain-text, and template content for your Mailchimp campaigns.",
+ "paths": [
+ "/campaigns/{campaign_id}/content"
+ ]
+ },
+ "connected-sites": {
+ "title": "Connected Sites",
+ "description": "Manage sites you've connected to your Mailchimp account.",
+ "paths": [
+ "/connected-sites",
+ "/connected-sites/{connected_site_id}",
+ "/connected-sites/{connected_site_id}/actions/verify-script-installation"
+ ]
+ },
+ "conversations": {
+ "title": "Conversations",
+ "description": "Conversation tracking lets you view subscribers' replies to your campaigns in your Mailchimp account.",
+ "paths": [
+ "/conversations",
+ "/conversations/{conversation_id}"
+ ],
+ "subResources": [
+ "conversation-messages"
+ ]
+ },
+ "conversation-messages": {
+ "title": "Messages",
+ "description": "Manage messages in a specific campaign conversation.",
+ "paths": [
+ "/conversations/{conversation_id}/messages",
+ "/conversations/{conversation_id}/messages/{message_id}"
+ ]
+ },
+ "customer-journeys-journeys-steps-actions": {
+ "title": "Automation flows (Previously Customer Journeys)",
+ "description": "Manage Automation flows",
+ "paths": [
+ "/customer-journeys/journeys/{journey_id}/steps/{step_id}/actions/trigger"
+ ],
+ "subResources": []
+ },
+ "file-manager": {
+ "title": "File Manager",
+ "description": "Manage files for your Mailchimp account. The File Manager is a place to store images, documents, and other files you include or link to in your campaigns, templates, or signup forms.",
+ "paths": [],
+ "subResources": [
+ "file-manager-folders",
+ "file-manager-files"
+ ]
+ },
+ "file-manager-folders": {
+ "title": "File Manager Folders",
+ "description": "Manage specific folders in the File Manager for your Mailchimp account.",
+ "paths": [
+ "/file-manager/folders",
+ "/file-manager/folders/{folder_id}"
+ ],
+ "subResources": [
+ "file-manager-folders-files"
+ ]
+ },
+ "file-manager-files": {
+ "title": "File Manager Files",
+ "description": "Manage specific files in the File Manager for your Mailchimp account.",
+ "paths": [
+ "/file-manager/files",
+ "/file-manager/files/{file_id}"
+ ]
+ },
+ "file-manager-folders-files": {
+ "title": "Files in Folder",
+ "description": "Manage specific files in a folder.",
+ "paths": [
+ "/file-manager/folders/{folder_id}/files"
+ ]
+ },
+ "landing-pages": {
+ "title": "Landing Pages",
+ "description": "Manage your Landing Pages, including publishing and unpublishing.",
+ "paths": [
+ "/landing-pages",
+ "/landing-pages/{page_id}",
+ "/landing-pages/{page_id}/actions/publish",
+ "/landing-pages/{page_id}/actions/unpublish"
+ ],
+ "subResources": [
+ "landing-pages-content"
+ ]
+ },
+ "landing-pages-content": {
+ "title": "Content",
+ "description": "The HTML content for your Mailchimp landing pages.",
+ "paths": [
+ "/landing-pages/{page_id}/content"
+ ]
+ },
+ "lists": {
+ "title": "Lists/Audiences",
+ "description": "Your Mailchimp list, also known as your audience, is where you store and manage all of your contacts.",
+ "paths": [
+ "/lists",
+ "/lists/{list_id}"
+ ],
+ "subResources": [
+ "interest-categories",
+ "list-segments",
+ "abuse-reports",
+ "list-activity",
+ "list-clients",
+ "list-growth-history",
+ "list-imports",
+ "list-members",
+ "list-merges",
+ "list-webhooks",
+ "list-signup-forms",
+ "list-locations",
+ "lists-tags-search",
+ "prebuilt-segments",
+ "list-preview-segment",
+ "list-surveys",
+ "list-sms-program"
+ ]
+ },
+ "list-members": {
+ "title": "Members",
+ "description": "Manage members of a specific Mailchimp list, including currently subscribed, unsubscribed, and bounced members.",
+ "paths": [
+ "/lists/{list_id}/members",
+ "/lists/{list_id}/members/{subscriber_hash}",
+ "/lists/{list_id}/members/{subscriber_hash}/actions/delete-permanent"
+ ],
+ "subResources": [
+ "list-member-activity",
+ "list-member-activity-feed",
+ "list-member-goal",
+ "list-member-notes",
+ "list-member-tags",
+ "list-member-events"
+ ]
+ },
+ "list-merges": {
+ "title": "Merge Fields",
+ "description": "Manage merge fields for an audience. See [Merge Field documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/) for more.",
+ "paths": [
+ "/lists/{list_id}/merge-fields",
+ "/lists/{list_id}/merge-fields/{merge_id}"
+ ],
+ "subResources": []
+ },
+ "abuse-reports": {
+ "title": "Abuse Reports",
+ "description": "Manage abuse complaints for a specific list. An abuse complaint occurs when your recipient reports an email as spam in their mail program.",
+ "paths": [
+ "/lists/{list_id}/abuse-reports",
+ "/lists/{list_id}/abuse-reports/{report_id}"
+ ]
+ },
+ "list-activity": {
+ "title": "Activity",
+ "description": "Get recent daily, aggregated activity stats for your list. For example, view unsubscribes, signups, total emails sent, opens, clicks, and more, for up to 180 days.",
+ "paths": [
+ "/lists/{list_id}/activity"
+ ]
+ },
+ "list-clients": {
+ "title": "Clients",
+ "description": "Get information about the most popular email clients for subscribers in a specific Mailchimp list.",
+ "paths": [
+ "/lists/{list_id}/clients"
+ ]
+ },
+ "list-growth-history": {
+ "title": "Growth History",
+ "description": "View a summary of the month-by-month growth activity for a specific list.",
+ "paths": [
+ "/lists/{list_id}/growth-history",
+ "/lists/{list_id}/growth-history/{month}"
+ ]
+ },
+ "list-webhooks": {
+ "title": "Webhooks",
+ "description": "Manage webhooks for a specific Mailchimp list.",
+ "paths": [
+ "/lists/{list_id}/webhooks",
+ "/lists/{list_id}/webhooks/{webhook_id}"
+ ]
+ },
+ "list-surveys": {
+ "title": "Surveys",
+ "description": "Get survey data for this audience.",
+ "paths": [
+ "/lists/{list_id}/surveys",
+ "/lists/{list_id}/surveys/{survey_id}",
+ "/lists/{list_id}/surveys/{survey_id}/actions/publish",
+ "/lists/{list_id}/surveys/{survey_id}/actions/unpublish",
+ "/lists/{list_id}/surveys/{survey_id}/actions/create-email"
+ ]
+ },
+ "interest-categories": {
+ "title": "Interest Categories",
+ "description": "Manage interest categories for a specific list. Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to 'group titles' in the Mailchimp application.",
+ "paths": [
+ "/lists/{list_id}/interest-categories",
+ "/lists/{list_id}/interest-categories/{interest_category_id}"
+ ],
+ "subResources": [
+ "interests"
+ ]
+ },
+ "interests": {
+ "title": "Interests",
+ "description": "Manage interests for a specific Mailchimp list. Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.",
+ "paths": [
+ "/lists/{list_id}/interest-categories/{interest_category_id}/interests",
+ "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}"
+ ]
+ },
+ "lists-tags-search": {
+ "title": "Tag Search",
+ "description": "Search for tags on a list by name.",
+ "paths": [
+ "/lists/{list_id}/tag-search"
+ ]
+ },
+ "list-segments": {
+ "title": "Segments",
+ "description": "Manage segments and tags for a specific Mailchimp list. A segment is a section of your list that includes only those subscribers who share specific common field information. Tags are labels you create to help organize your contacts.",
+ "paths": [
+ "/lists/{list_id}/segments",
+ "/lists/{list_id}/segments/{segment_id}"
+ ],
+ "subResources": [
+ "list-segment-members"
+ ]
+ },
+ "list-segment-members": {
+ "title": "Segment Members",
+ "description": "Manage list members in a saved segment.",
+ "paths": [
+ "/lists/{list_id}/segments/{segment_id}/members",
+ "/lists/{list_id}/segments/{segment_id}/members/{subscriber_hash}"
+ ]
+ },
+ "list-member-activity": {
+ "title": "Member Activity",
+ "description": "Get details about a subscriber's recent activity. Use the new activity-feed endpoint to access more events for a given contact.",
+ "paths": [
+ "/lists/{list_id}/members/{subscriber_hash}/activity"
+ ]
+ },
+ "list-member-activity-feed": {
+ "title": "Member Activity Feed",
+ "description": "Get details about a subscriber's recent activity.",
+ "paths": [
+ "/lists/{list_id}/members/{subscriber_hash}/activity-feed"
+ ]
+ },
+ "list-member-goal": {
+ "title": "Member Goals",
+ "description": "Get information about recent goal events for a specific list member.",
+ "paths": [
+ "/lists/{list_id}/members/{subscriber_hash}/goals"
+ ]
+ },
+ "list-member-notes": {
+ "title": "Member Notes",
+ "description": "Retrieve recent notes for a specific list member.",
+ "paths": [
+ "/lists/{list_id}/members/{subscriber_hash}/notes",
+ "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}"
+ ]
+ },
+ "list-member-tags": {
+ "title": "Member Tags",
+ "description": "Manage all the tags that have been assigned to a contact.",
+ "paths": [
+ "/lists/{list_id}/members/{subscriber_hash}/tags"
+ ]
+ },
+ "list-member-events": {
+ "title": "Events",
+ "description": "Use the Events endpoint to collect website or in-app actions and trigger targeted automations. ",
+ "paths": [
+ "/lists/{list_id}/members/{subscriber_hash}/events"
+ ]
+ },
+ "list-signup-forms": {
+ "title": "Signup Forms",
+ "description": "Manage list signup forms.",
+ "paths": [
+ "/lists/{list_id}/signup-forms"
+ ]
+ },
+ "list-locations": {
+ "title": "Locations",
+ "description": "Get the locations (countries) that the list's subscribers have been tagged to based on geocoding their IP address.",
+ "paths": [
+ "/lists/{list_id}/locations"
+ ]
+ },
+ "reports": {
+ "title": "Reports",
+ "description": "Manage campaign reports for your Mailchimp account. All Reports endpoints are read-only. Mailchimp's campaign and automation reports analyze clicks, opens, subscribers' social activity, e-commerce data, and more. Note: Campaign IDs for A/B Testing Campaigns are available through the Campaign API Endpoint's Read method.",
+ "paths": [
+ "/reports",
+ "/reports/{campaign_id}"
+ ],
+ "subResources": [
+ "campaign-abuse",
+ "campaign-advice",
+ "click-reports",
+ "domain-performance-reports",
+ "eepurl-reports",
+ "email-activity-reports",
+ "location-reports",
+ "sent-to-reports",
+ "sub-reports",
+ "unsub-reports",
+ "open-reports",
+ "campaign-ecommerce-product-activity"
+ ]
+ },
+ "campaign-abuse": {
+ "title": "Campaign Abuse",
+ "description": "Get information about campaign abuse complaints.",
+ "paths": [
+ "/reports/{campaign_id}/abuse-reports",
+ "/reports/{campaign_id}/abuse-reports/{report_id}"
+ ]
+ },
+ "campaign-advice": {
+ "title": "Campaign Advice",
+ "description": "Get recent feedback based on a campaign's statistics.",
+ "paths": [
+ "/reports/{campaign_id}/advice"
+ ]
+ },
+ "open-reports": {
+ "title": "Campaign Open Reports",
+ "description": "Get a detailed report about any emails in a specific campaign that were opened by the recipient. ",
+ "paths": [
+ "/reports/{campaign_id}/open-details",
+ "/reports/{campaign_id}/open-details/{subscriber_hash}"
+ ]
+ },
+ "click-reports": {
+ "title": "Click Reports",
+ "description": "Get detailed information about links clicked in campaigns.",
+ "paths": [
+ "/reports/{campaign_id}/click-details",
+ "/reports/{campaign_id}/click-details/{link_id}"
+ ],
+ "subResources": [
+ "link-clickers"
+ ]
+ },
+ "campaign-ecommerce-product-activity": {
+ "title": "Ecommerce Product Activity",
+ "description": "Ecommerce product activity report for a campaign.",
+ "paths": [
+ "/reports/{campaign_id}/ecommerce-product-activity"
+ ]
+ },
+ "link-clickers": {
+ "title": "Click Reports Members",
+ "description": "Get information about specific subscribers who clicked on links in a campaign.",
+ "paths": [
+ "/reports/{campaign_id}/click-details/{link_id}/members",
+ "/reports/{campaign_id}/click-details/{link_id}/members/{subscriber_hash}"
+ ]
+ },
+ "domain-performance-reports": {
+ "title": "Domain Performance",
+ "description": "Get statistics for the top-performing domains from a campaign.",
+ "paths": [
+ "/reports/{campaign_id}/domain-performance"
+ ]
+ },
+ "eepurl-reports": {
+ "title": "EepURL Reports",
+ "description": "Get a summary of social activity for the campaign, tracked by EepURL.",
+ "paths": [
+ "/reports/{campaign_id}/eepurl"
+ ]
+ },
+ "email-activity-reports": {
+ "title": "Email Activity",
+ "description": "Get list member activity for a specific campaign.",
+ "paths": [
+ "/reports/{campaign_id}/email-activity",
+ "/reports/{campaign_id}/email-activity/{subscriber_hash}"
+ ]
+ },
+ "location-reports": {
+ "title": "Location",
+ "description": "Get top open locations for a specific campaign.",
+ "paths": [
+ "/reports/{campaign_id}/locations"
+ ]
+ },
+ "sent-to-reports": {
+ "title": "Sent To",
+ "description": "Get details about campaign recipients.",
+ "paths": [
+ "/reports/{campaign_id}/sent-to",
+ "/reports/{campaign_id}/sent-to/{subscriber_hash}"
+ ]
+ },
+ "sub-reports": {
+ "title": "Sub-Reports",
+ "description": "A list of reports for child campaigns of a specific parent campaign. For example, use this endpoint to view Multivariate, RSS, and A/B Testing Campaign reports.",
+ "paths": [
+ "/reports/{campaign_id}/sub-reports"
+ ]
+ },
+ "unsub-reports": {
+ "title": "Unsubscribes",
+ "description": "Get information about list members who unsubscribed from a specific campaign.",
+ "paths": [
+ "/reports/{campaign_id}/unsubscribed",
+ "/reports/{campaign_id}/unsubscribed/{subscriber_hash}"
+ ]
+ },
+ "templates": {
+ "title": "Templates",
+ "description": "Manage your Mailchimp templates. A template is an HTML file used to create the layout and basic design for a campaign. ",
+ "paths": [
+ "/templates",
+ "/templates/{template_id}"
+ ],
+ "subResources": [
+ "template-default-content"
+ ]
+ },
+ "template-default-content": {
+ "title": "Default Content",
+ "description": "Manage the default content for a Mailchimp template.",
+ "paths": [
+ "/templates/{template_id}/default-content"
+ ]
+ },
+ "template-folders": {
+ "title": "Template Folders",
+ "description": "Organize your templates using folders.",
+ "paths": [
+ "/template-folders",
+ "/template-folders/{folder_id}"
+ ]
+ },
+ "campaign-folders": {
+ "title": "Campaign Folders",
+ "description": "Organize your campaigns using folders.",
+ "paths": [
+ "/campaign-folders",
+ "/campaign-folders/{folder_id}"
+ ]
+ },
+ "ecommerce-stores": {
+ "title": "E-commerce Stores",
+ "description": "Connect your E-commerce Store to Mailchimp to take advantage of powerful reporting and personalization features and to learn more about your customers.",
+ "paths": [
+ "/ecommerce/stores",
+ "/ecommerce/stores/{store_id}"
+ ],
+ "subResources": [
+ "ecommerce-customers",
+ "ecommerce-orders",
+ "ecommerce-products",
+ "ecommerce-carts",
+ "ecommerce-promo-rules",
+ "ecommerce-collections"
+ ]
+ },
+ "ecommerce-customers": {
+ "title": "Customers",
+ "description": "Add Customers to your Store to track their orders and to view E-Commerce Data for your Mailchimp lists and campaigns. Each Customer is connected to a Mailchimp list member, so adding a Customer can also add or update a list member.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/customers",
+ "/ecommerce/stores/{store_id}/customers/{customer_id}"
+ ]
+ },
+ "ecommerce-promo-rules": {
+ "title": "Promo Rules",
+ "description": "Promo Rules help you create promo codes for your campaigns. Promo Rules define generic information about promo codes like expiration time, start time, amount of discount being offered etc. For a given promo rule you can define if it's a percentage discount or a fixed amount and if it applies for the order as a whole or if it's per item or free shipping. You can then create promo codes for this price rule. Promo codes contain the actual code that is applied at checkout along with some other information. Price Rules have one to many relationship with promo codes.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/promo-rules",
+ "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}"
+ ],
+ "subResources": [
+ "ecommerce-promo-codes"
+ ]
+ },
+ "ecommerce-promo-codes": {
+ "title": "Promo Codes",
+ "description": "Promo codes can be created for a given price rule. All the promo codes under a price rule share the generic information defined for that rule like the amount, type, expiration date etc. Promo code defines the more specific information about a promo code like the actual code, redemption_url, usage_count, etc that's unique to a code. Promo Code must be defined under a promo rule.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes",
+ "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}"
+ ]
+ },
+ "ecommerce-orders": {
+ "title": "Orders",
+ "description": "Orders represent successful e-commerce transactions, and this data can be used to provide more detailed campaign reports, track sales, and personalize emails to your targeted consumers, and view other e-commerce data in your Mailchimp account.",
+ "paths": [
+ "/ecommerce/orders",
+ "/ecommerce/stores/{store_id}/orders",
+ "/ecommerce/stores/{store_id}/orders/{order_id}"
+ ],
+ "subResources": [
+ "ecommerce-order-lines"
+ ]
+ },
+ "ecommerce-order-lines": {
+ "title": "Order Lines",
+ "description": "Each Order contains one or more Order Lines, which represent a specific Product Variant that a Customer purchases.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/orders/{order_id}/lines",
+ "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}"
+ ]
+ },
+ "ecommerce-products": {
+ "title": "Products",
+ "description": "E-commerce items for sale in your store need to be created as Products so you can add the items to a Cart or an Order. Each Product requires at least one Product Variant.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/products",
+ "/ecommerce/stores/{store_id}/products/{product_id}"
+ ],
+ "subResources": [
+ "ecommerce-product-variants",
+ "ecommerce-product-images"
+ ]
+ },
+ "ecommerce-product-variants": {
+ "title": "Product Variants",
+ "description": "A Product Variant represents a specific item for purchase, and is contained within a parent Product. At least one Product Variant is required for each Product.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/products/{product_id}/variants",
+ "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}"
+ ]
+ },
+ "ecommerce-product-images": {
+ "title": "Product Images",
+ "description": "A Product Image represents a specific product image.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/products/{product_id}/images",
+ "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}"
+ ]
+ },
+ "ecommerce-carts": {
+ "title": "Carts",
+ "description": "Use Carts to represent unfinished e-commerce transactions. This can be used to create an Abandoned Cart workflow, or to save a consumer\u2019s shopping cart pending a successful Order.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/carts",
+ "/ecommerce/stores/{store_id}/carts/{cart_id}"
+ ],
+ "subResources": [
+ "ecommerce-cart-lines"
+ ]
+ },
+ "ecommerce-cart-lines": {
+ "title": "Cart Lines",
+ "description": "Each Cart contains one or more Cart Lines, which represent a specific Product Variant that a Customer has added to their shopping cart.",
+ "paths": [
+ "/ecommerce/stores/{store_id}/carts/{cart_id}/lines",
+ "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}"
+ ]
+ },
+ "facebook-ads": {
+ "title": "Facebook Ads",
+ "description": "Get information about Facebook Ads.",
+ "paths": [
+ "/facebook-ads",
+ "/facebook-ads/{outreach_id}"
+ ]
+ },
+ "ping": {
+ "title": "Ping",
+ "description": "A health check endpoint for Mailchimp API 3.0.",
+ "paths": [
+ "/ping"
+ ]
+ },
+ "reporting": {
+ "title": "Reporting",
+ "description": "Reporting for various campaign types.",
+ "paths": [],
+ "subResources": [
+ "reporting-facebook-ads",
+ "reporting-google-ads",
+ "reporting-landing-pages",
+ "reporting-postcards",
+ "reporting-social-posts",
+ "reporting-surveys",
+ "reporting-websites"
+ ]
+ },
+ "reporting-facebook-ads": {
+ "title": "Facebook Ads",
+ "description": "Get information about Facebook Ad reports. ",
+ "paths": [
+ "/reporting/facebook-ads",
+ "/reporting/facebook-ads/{outreach_id}",
+ "/reporting/facebook-ads/{outreach_id}/ecommerce-product-activity"
+ ]
+ },
+ "reporting-landing-pages": {
+ "title": "Landing Pages",
+ "description": "Get information about Landing Page reports.",
+ "paths": [
+ "/reporting/landing-pages",
+ "/reporting/landing-pages/{outreach_id}"
+ ]
+ },
+ "reporting-surveys": {
+ "title": "Surveys",
+ "description": "Get an overall report for a [hosted survey](https://mailchimp.com/help/create-a-survey/).",
+ "paths": [
+ "/reporting/surveys",
+ "/reporting/surveys/{survey_id}"
+ ],
+ "subResources": [
+ "reporting-surveys-questions",
+ "reporting-surveys-responses"
+ ]
+ },
+ "reporting-surveys-questions": {
+ "title": "Survey Questions",
+ "description": "Get reports by question on a [hosted survey](https://mailchimp.com/help/create-a-survey/).",
+ "paths": [
+ "/reporting/surveys/{survey_id}/questions",
+ "/reporting/surveys/{survey_id}/questions/{question_id}"
+ ],
+ "subResources": [
+ "reporting-surveys-questions-answers"
+ ]
+ },
+ "reporting-surveys-questions-answers": {
+ "title": "Survey Question Answers",
+ "description": "Answers to specific questions on a [hosted survey](https://mailchimp.com/help/create-a-survey/).",
+ "paths": [
+ "/reporting/surveys/{survey_id}/questions/{question_id}/answers"
+ ]
+ },
+ "reporting-surveys-responses": {
+ "title": "Survey Responses",
+ "description": "Get survey response reports for a [hosted survey](https://mailchimp.com/help/create-a-survey/).",
+ "paths": [
+ "/reporting/surveys/{survey_id}/responses",
+ "/reporting/surveys/{survey_id}/responses/{response_id}"
+ ]
+ },
+ "search-campaigns": {
+ "title": "Search Campaigns",
+ "description": "Search all of an account's campaigns for the specified query terms.",
+ "paths": [
+ "/search-campaigns"
+ ]
+ },
+ "search-members": {
+ "title": "Search Members",
+ "description": "Search the account or a specific list for members that match the specified query terms.",
+ "paths": [
+ "/search-members"
+ ]
+ },
+ "verified-domains": {
+ "x-hidden": false,
+ "title": "Verified Domains",
+ "description": "Manage the domains on your account that can be used for sending email campaigns.",
+ "paths": [
+ "/verified-domains",
+ "/verified-domains/{domain_name}",
+ "/verified-domains/{domain_name}/actions/verify"
+ ],
+ "subresources": []
+ }
+ }
+ },
+ "swagger": "2.0",
+ "info": {
+ "version": "3.0.90",
+ "title": "Mailchimp Marketing API",
+ "contact": {
+ "name": "Mailchimp API Support",
+ "email": "apihelp@mailchimp.com"
+ },
+ "x-permalink": "https://github.com/mailchimp/mailchimp-client-lib-codegen/blob/main/spec/marketing.json"
+ },
+ "host": "server.api.mailchimp.com",
+ "basePath": "/3.0",
+ "securityDefinitions": {
+ "basicAuth": {
+ "type": "basic"
+ }
+ },
+ "security": [
+ {
+ "basicAuth": []
+ }
+ ],
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json",
+ "application/problem+json"
+ ],
+ "paths": {
+ "/": {
+ "get": {
+ "summary": "List api root resources",
+ "description": "Get links to all other resources available in the API.",
+ "operationId": "getRoot",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "API Root",
+ "description": "The API root resource links to all other resources available in the API.",
+ "properties": {
+ "account_id": {
+ "type": "string",
+ "title": "Account ID",
+ "description": "The Mailchimp account ID.",
+ "readOnly": true
+ },
+ "login_id": {
+ "type": "string",
+ "title": "Login ID",
+ "description": "The ID associated with the user who owns this API key. If you can login to multiple accounts, this ID will be the same for each account.",
+ "readOnly": true
+ },
+ "account_name": {
+ "type": "string",
+ "title": "Account Name",
+ "description": "The name of the account.",
+ "readOnly": true
+ },
+ "email": {
+ "type": "string",
+ "title": "Account Email",
+ "description": "The account email address.",
+ "readOnly": true
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The first name tied to the account.",
+ "readOnly": true
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The last name tied to the account.",
+ "readOnly": true
+ },
+ "username": {
+ "type": "string",
+ "title": "User Name",
+ "description": "The username tied to the account.",
+ "readOnly": true,
+ "example": "freddie2000"
+ },
+ "avatar_url": {
+ "type": "string",
+ "title": "Avatar URL",
+ "description": "URL of the avatar for the user.",
+ "readOnly": true
+ },
+ "role": {
+ "type": "string",
+ "title": "Role",
+ "description": "The [user role](https://mailchimp.com/help/manage-user-levels-in-your-account/) for the account.",
+ "readOnly": true
+ },
+ "member_since": {
+ "type": "string",
+ "title": "Account Creation Date",
+ "format": "date-time",
+ "description": "The date and time that the account was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2010-01-01T23:59:59+00:00"
+ },
+ "pricing_plan_type": {
+ "type": "string",
+ "title": "Account Pricing Plan",
+ "description": "The type of pricing plan the account is on.",
+ "enum": [
+ "monthly",
+ "pay_as_you_go",
+ "forever_free"
+ ],
+ "readOnly": true
+ },
+ "first_payment": {
+ "type": "string",
+ "title": "First Payment",
+ "format": "date-time",
+ "description": "Date of first payment for monthly plans.",
+ "readOnly": true,
+ "example": "2010-01-01T23:59:59+00:00"
+ },
+ "account_timezone": {
+ "type": "string",
+ "title": "Account Timezone",
+ "description": "The timezone currently set for the account.",
+ "readOnly": true
+ },
+ "account_industry": {
+ "type": "string",
+ "title": "Account Industry",
+ "description": "The user-specified industry associated with the account.",
+ "readOnly": true
+ },
+ "contact": {
+ "type": "object",
+ "title": "Account Contact",
+ "description": "Information about the account contact.",
+ "readOnly": true,
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company name for the account.",
+ "readOnly": true
+ },
+ "addr1": {
+ "type": "string",
+ "title": "Address Line 1",
+ "description": "The street address for the account contact.",
+ "readOnly": true
+ },
+ "addr2": {
+ "type": "string",
+ "title": "Address Line 2",
+ "description": "The street address for the account contact.",
+ "readOnly": true
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the account contact.",
+ "readOnly": true
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the account contact.",
+ "readOnly": true
+ },
+ "zip": {
+ "type": "string",
+ "title": "Zip Code",
+ "description": "The zip code for the account contact.",
+ "readOnly": true
+ },
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The country for the account contact.",
+ "readOnly": true
+ }
+ }
+ },
+ "pro_enabled": {
+ "type": "boolean",
+ "title": "Mailchimp Pro",
+ "description": "Legacy - whether the account includes [Mailchimp Pro](https://mailchimp.com/help/about-mailchimp-pro/).",
+ "readOnly": true
+ },
+ "last_login": {
+ "type": "string",
+ "title": "Last Login Date",
+ "description": "The date and time of the last login for this account in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "total_subscribers": {
+ "type": "integer",
+ "title": "Total Subscribers",
+ "description": "The total number of subscribers across all lists in the account.",
+ "readOnly": true
+ },
+ "industry_stats": {
+ "type": "object",
+ "title": "Industry Stats",
+ "description": "The [average campaign statistics](https://mailchimp.com/resources/research/email-marketing-benchmarks/?utm_source=mc-api&utm_medium=docs&utm_campaign=apidocs) for all campaigns in the account's specified industry.",
+ "readOnly": true,
+ "properties": {
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average unique open rate for all campaigns in the account's specified industry.",
+ "readOnly": true
+ },
+ "bounce_rate": {
+ "type": "number",
+ "title": "Bounce Rate",
+ "description": "The average bounce rate for all campaigns in the account's specified industry.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average unique click rate for all campaigns in the account's specified industry.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "root"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_root",
+ "methodNameCamel": "getRoot"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/activity-feed/chimp-chatter": {
+ "get": {
+ "summary": "Get latest chimp chatter",
+ "description": "Return the Chimp Chatter for this account ordered by most recent.",
+ "parameters": [
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ChimpChatter Collection",
+ "schema": {
+ "type": "object",
+ "description": "An array of Chimp Chatter messages. There's a maximum of 200 messages present for an account.",
+ "properties": {
+ "chimp_chatter": {
+ "type": "array",
+ "description": "An array of Chimp Chatter messages. There's a maximum of 200 messages present for an account.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "title": "ChimpChatter",
+ "description": "A Chimp Chatter message",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "readOnly": true,
+ "example": "1 new subscriber to Your New Campaign!"
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "readOnly": true,
+ "example": "People are telling their friends about your campaign!"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of activity",
+ "enum": [
+ "lists:new-subscriber",
+ "lists:unsubscribes",
+ "lists:profile-updates",
+ "campaigns:facebook-likes",
+ "campaigns:forward-to-friend",
+ "lists:imports"
+ ],
+ "readOnly": true,
+ "example": "campaigns:forward-to-friend"
+ },
+ "update_time": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time this activity was updated.",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "URL to a report that includes this activity",
+ "readOnly": true,
+ "example": "http://dev.mailchimp.com/reports/summary?id=1"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "If it exists, list ID for the associated list",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "If it exists, campaign ID for the associated campaign",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "activityFeed"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_chimp_chatter",
+ "methodNameCamel": "getChimpChatter"
+ },
+ "operationId": "getActivityFeedChimpChatter",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/account-exports": {
+ "get": {
+ "summary": "List account exports",
+ "description": "Get a list of account exports for a given account.",
+ "operationId": "getAccountExports",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An array of objects, each representing an account export.",
+ "properties": {
+ "exports": {
+ "title": "Account Exports",
+ "description": "An array of objects, each representing an account export.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "description": "An account export.",
+ "properties": {
+ "export_id": {
+ "type": "integer",
+ "title": "Export ID",
+ "description": "The ID for the export."
+ },
+ "started": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Start Time",
+ "description": "Start time for the export."
+ },
+ "finished": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Finish Time",
+ "description": "If finished, the finish time for the export."
+ },
+ "size_in_bytes": {
+ "type": "integer",
+ "title": "Export Size",
+ "description": "The size of the uncompressed export in bytes."
+ },
+ "download_url": {
+ "type": "string",
+ "title": "Download URL",
+ "description": "If the export is finished, the download URL for an export. URLs are only valid for 90 days after the export completes."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "accountExports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_account_exports",
+ "methodNameCamel": "listAccountExports"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add export",
+ "description": "Create a new account export in your Mailchimp account.",
+ "operationId": "postAccountExport",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An account export.",
+ "properties": {
+ "export_id": {
+ "type": "integer",
+ "title": "Export ID",
+ "description": "The ID for the export."
+ },
+ "started": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Start Time",
+ "description": "Start time for the export."
+ },
+ "finished": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Finish Time",
+ "description": "If finished, the finish time for the export."
+ },
+ "size_in_bytes": {
+ "type": "integer",
+ "title": "Export Size",
+ "description": "The size of the uncompressed export in bytes."
+ },
+ "download_url": {
+ "type": "string",
+ "title": "Download URL",
+ "description": "If the export is finished, the download URL for an export. URLs are only valid for 90 days after the export completes."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "accountExports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_account_export",
+ "methodNameCamel": "createAccountExport"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Create an account export",
+ "description": "Creates an account export with the given parameters.",
+ "required": [
+ "include_stages"
+ ],
+ "properties": {
+ "include_stages": {
+ "type": "array",
+ "title": "Include Stages",
+ "description": "The stages of an account export to include.",
+ "example": "[\"audiences\", \"gallery_files\"]",
+ "items": {
+ "type": "string",
+ "enum": [
+ "audiences",
+ "campaigns",
+ "events",
+ "gallery_files",
+ "reports",
+ "templates"
+ ]
+ }
+ },
+ "since_timestamp": {
+ "type": "string",
+ "title": "Since Timestamp",
+ "format": "date-time",
+ "description": "An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit.",
+ "example": "2021-08-23T14:15:09Z"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/account-exports/{export_id}": {
+ "get": {
+ "summary": "Get account export info",
+ "description": "Get information about a specific account export.",
+ "operationId": "getAccountExportId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "export_id",
+ "x-title": "Export ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the account export."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An account export.",
+ "properties": {
+ "export_id": {
+ "type": "integer",
+ "title": "Export ID",
+ "description": "The ID for the export."
+ },
+ "started": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Start Time",
+ "description": "Start time for the export."
+ },
+ "finished": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Finish Time",
+ "description": "If finished, the finish time for the export."
+ },
+ "size_in_bytes": {
+ "type": "integer",
+ "title": "Export Size",
+ "description": "The size of the uncompressed export in bytes."
+ },
+ "download_url": {
+ "type": "string",
+ "title": "Download URL",
+ "description": "If the export is finished, the download URL for an export. URLs are only valid for 90 days after the export completes."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "accountExport"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_account_exports",
+ "methodNameCamel": "getAccountExports"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/audiences": {
+ "get": {
+ "summary": "Get a list of audiences",
+ "description": "Get information about all audiences in the account.",
+ "operationId": "getAudienceContacts",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An array of objects, each representing an audience record.",
+ "properties": {
+ "audiences": {
+ "title": "Audiences",
+ "description": "An array of objects, each representing an audience record.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "description": "An instance of an audience.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Audience ID",
+ "description": "The unique ID for the contact.",
+ "example": "773280e405"
+ },
+ "name": {
+ "type": "string",
+ "title": "Audience Name",
+ "description": "The name of an audience",
+ "example": "Example Audience"
+ },
+ "stats": {
+ "type": "object",
+ "title": "Audience Stats",
+ "properties": {
+ "total_contacts": {
+ "type": "integer",
+ "title": "Contact Count",
+ "description": "The total count of all contacts in an audience",
+ "readOnly": true
+ }
+ }
+ },
+ "enabled_channels": {
+ "type": "array",
+ "title": "Enabled Channels",
+ "description": "The communication channels enabled on an audience",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_audiences",
+ "methodNameCamel": "listAudiences"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/audiences/{audience_id}": {
+ "get": {
+ "summary": "Get audience info",
+ "description": "Get information about a specific audience.",
+ "operationId": "getAudienceId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "audience_id",
+ "x-title": "Audience ID",
+ "in": "path",
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An instance of an audience.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Audience ID",
+ "description": "The unique ID for the contact.",
+ "example": "773280e405"
+ },
+ "name": {
+ "type": "string",
+ "title": "Audience Name",
+ "description": "The name of an audience",
+ "example": "Example Audience"
+ },
+ "stats": {
+ "type": "object",
+ "title": "Audience Stats",
+ "properties": {
+ "total_contacts": {
+ "type": "integer",
+ "title": "Contact Count",
+ "description": "The total count of all contacts in an audience",
+ "readOnly": true
+ }
+ }
+ },
+ "enabled_channels": {
+ "type": "array",
+ "title": "Enabled Channels",
+ "description": "The communication channels enabled on an audience",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_audience_id",
+ "methodNameCamel": "getAudienceId"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/audiences/{audience_id}/contacts": {
+ "get": {
+ "summary": "Get Contacts",
+ "description": "Get a list of omni-channel contacts for a given audience.",
+ "operationId": "getAudienceContactList",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "cursor",
+ "x-title": "cursor",
+ "in": "query",
+ "description": "Paginate through a collection of records by setting the `cursor` parameter to a `next_cursor` attribute returned by a previous request. Default value fetches the first \"page\" of results.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "created_before",
+ "x-title": "Created Before Time",
+ "in": "query",
+ "description": "Restricts the response to contacts created at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "created_since",
+ "x-title": "Created Since Time",
+ "in": "query",
+ "description": "Restricts the response to contacts created after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "updated_before",
+ "x-title": "Updated Before Time",
+ "in": "query",
+ "description": "Restricts the response to contacts updated at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "updated_since",
+ "x-title": "Updated Since Time",
+ "in": "query",
+ "description": "Restricts the response to contacts updated after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "audience_id",
+ "x-title": "Audience ID",
+ "in": "path",
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An array of objects, each representing a contact record.",
+ "properties": {
+ "contacts": {
+ "title": "Contacts",
+ "description": "An array of objects, each representing a contact record.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "The unique ID for the contact.",
+ "example": "7CCF816ADF6CE1B11AE09BB024A02B9B",
+ "readOnly": true
+ },
+ "audience_id": {
+ "type": "string",
+ "title": "Audience ID",
+ "description": "The unique ID for the audience.",
+ "example": "773280e405",
+ "readOnly": true
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "enum": [
+ "en",
+ "ar",
+ "af",
+ "be",
+ "bg",
+ "ca",
+ "zh",
+ "zh_CN",
+ "hr",
+ "cs",
+ "da",
+ "nl",
+ "et",
+ "fa",
+ "fi",
+ "fr",
+ "fr_CA",
+ "de",
+ "el",
+ "he",
+ "hi",
+ "hu",
+ "is",
+ "id",
+ "ga",
+ "it",
+ "ja",
+ "km",
+ "ko",
+ "lv",
+ "lt",
+ "mt",
+ "ms",
+ "mk",
+ "no",
+ "pl",
+ "pt",
+ "pt_PT",
+ "ro",
+ "ru",
+ "sr",
+ "sk",
+ "sl",
+ "es",
+ "es_ES",
+ "sw",
+ "sv",
+ "ta",
+ "th",
+ "tr",
+ "uk",
+ "vi"
+ ],
+ "example": "en"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of a contact.",
+ "enum": [
+ "active",
+ "archived"
+ ],
+ "example": "active",
+ "readOnly": true
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "hashed_email": {
+ "type": "string",
+ "title": "Hashed Email Address",
+ "description": "MD5 hash of the email address",
+ "example": "9115d71ba28088047d342e3bcedacd0f"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+14045550102"
+ },
+ "hashed_sms_phone": {
+ "type": "string",
+ "title": "Hashed SMS Phone Number",
+ "description": "SHA256 hash of the SMS phone number",
+ "example": "0572084e1f8288816f02cdb7bd930c62400bc8aef510adfaa9eec2b995fa7609"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags assigned to this contact.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag"
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Created At",
+ "description": "The date that the contact was created.",
+ "readOnly": true
+ },
+ "last_updated_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Update At",
+ "description": "The date that the contact was last updated.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "next_cursor": {
+ "type": "string",
+ "title": "Next Cursor",
+ "description": "A cursor pointing to the last item on this page of the collection. Paginate through a collection of records by setting the `cursor` parameter on a subsequent request to this value.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_audience_contact_list",
+ "methodNameCamel": "listAudienceContactList"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add Contact",
+ "description": "Create a new omni-channel contact for an audience.",
+ "operationId": "createAudienceContact",
+ "parameters": [
+ {
+ "name": "audience_id",
+ "x-title": "Audience ID",
+ "in": "path",
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "merge_field_validation_mode",
+ "x-title": "Merge Field Validation Mode",
+ "in": "query",
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ignore_required_checks",
+ "strict"
+ ]
+ },
+ {
+ "name": "data_mode",
+ "x-title": "Data Mode",
+ "in": "query",
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "historical",
+ "live"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "The unique ID for the contact.",
+ "example": "7CCF816ADF6CE1B11AE09BB024A02B9B",
+ "readOnly": true
+ },
+ "audience_id": {
+ "type": "string",
+ "title": "Audience ID",
+ "description": "The unique ID for the audience.",
+ "example": "773280e405",
+ "readOnly": true
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "enum": [
+ "en",
+ "ar",
+ "af",
+ "be",
+ "bg",
+ "ca",
+ "zh",
+ "zh_CN",
+ "hr",
+ "cs",
+ "da",
+ "nl",
+ "et",
+ "fa",
+ "fi",
+ "fr",
+ "fr_CA",
+ "de",
+ "el",
+ "he",
+ "hi",
+ "hu",
+ "is",
+ "id",
+ "ga",
+ "it",
+ "ja",
+ "km",
+ "ko",
+ "lv",
+ "lt",
+ "mt",
+ "ms",
+ "mk",
+ "no",
+ "pl",
+ "pt",
+ "pt_PT",
+ "ro",
+ "ru",
+ "sr",
+ "sk",
+ "sl",
+ "es",
+ "es_ES",
+ "sw",
+ "sv",
+ "ta",
+ "th",
+ "tr",
+ "uk",
+ "vi"
+ ],
+ "example": "en"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of a contact.",
+ "enum": [
+ "active",
+ "archived"
+ ],
+ "example": "active",
+ "readOnly": true
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "hashed_email": {
+ "type": "string",
+ "title": "Hashed Email Address",
+ "description": "MD5 hash of the email address",
+ "example": "9115d71ba28088047d342e3bcedacd0f"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+14045550102"
+ },
+ "hashed_sms_phone": {
+ "type": "string",
+ "title": "Hashed SMS Phone Number",
+ "description": "SHA256 hash of the SMS phone number",
+ "example": "0572084e1f8288816f02cdb7bd930c62400bc8aef510adfaa9eec2b995fa7609"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags assigned to this contact.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag"
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Created At",
+ "description": "The date that the contact was created.",
+ "readOnly": true
+ },
+ "last_updated_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Update At",
+ "description": "The date that the contact was last updated.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_audience_contact",
+ "methodNameCamel": "createAudienceContact"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "example": "EN"
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "marketing_consent": {
+ "type": "object",
+ "title": "Marketing Consent Details",
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "description": "Status of a contacts Marketing Consent",
+ "enum": [
+ "confirmed",
+ "consented",
+ "denied",
+ "unknown"
+ ],
+ "example": "confirmed"
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+16155550128"
+ },
+ "marketing_consent": {
+ "type": "object",
+ "title": "Marketing Consent Details",
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "description": "The current consent status captured for a contact\u2019s marketing communications.",
+ "enum": [
+ "confirmed",
+ "consented",
+ "unknown"
+ ],
+ "example": "confirmed"
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name"
+ },
+ "example": [
+ "new_tag",
+ "another_tag"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/audiences/{audience_id}/contacts/{contact_id}": {
+ "get": {
+ "summary": "Get Contact",
+ "description": "Retrieve a specific omni-channel contact in an audience.",
+ "operationId": "getAudienceContact",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "audience_id",
+ "x-title": "Audience ID",
+ "in": "path",
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "contact_id",
+ "x-title": "Contact ID or Channel Hash",
+ "type": "string",
+ "required": true,
+ "description": "A unique identifier for the contact, which can be a Mailchimp contact ID or a channel hash. A channel hash must follow the format email:[md5_hash] (where the hash is the MD5 of the lowercased email address) or sms:[sha256_hash] (where the hash is the SHA256 of the E.164-formatted phone number)."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "The unique ID for the contact.",
+ "example": "7CCF816ADF6CE1B11AE09BB024A02B9B",
+ "readOnly": true
+ },
+ "audience_id": {
+ "type": "string",
+ "title": "Audience ID",
+ "description": "The unique ID for the audience.",
+ "example": "773280e405",
+ "readOnly": true
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "enum": [
+ "en",
+ "ar",
+ "af",
+ "be",
+ "bg",
+ "ca",
+ "zh",
+ "zh_CN",
+ "hr",
+ "cs",
+ "da",
+ "nl",
+ "et",
+ "fa",
+ "fi",
+ "fr",
+ "fr_CA",
+ "de",
+ "el",
+ "he",
+ "hi",
+ "hu",
+ "is",
+ "id",
+ "ga",
+ "it",
+ "ja",
+ "km",
+ "ko",
+ "lv",
+ "lt",
+ "mt",
+ "ms",
+ "mk",
+ "no",
+ "pl",
+ "pt",
+ "pt_PT",
+ "ro",
+ "ru",
+ "sr",
+ "sk",
+ "sl",
+ "es",
+ "es_ES",
+ "sw",
+ "sv",
+ "ta",
+ "th",
+ "tr",
+ "uk",
+ "vi"
+ ],
+ "example": "en"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of a contact.",
+ "enum": [
+ "active",
+ "archived"
+ ],
+ "example": "active",
+ "readOnly": true
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "hashed_email": {
+ "type": "string",
+ "title": "Hashed Email Address",
+ "description": "MD5 hash of the email address",
+ "example": "9115d71ba28088047d342e3bcedacd0f"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+14045550102"
+ },
+ "hashed_sms_phone": {
+ "type": "string",
+ "title": "Hashed SMS Phone Number",
+ "description": "SHA256 hash of the SMS phone number",
+ "example": "0572084e1f8288816f02cdb7bd930c62400bc8aef510adfaa9eec2b995fa7609"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags assigned to this contact.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag"
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Created At",
+ "description": "The date that the contact was created.",
+ "readOnly": true
+ },
+ "last_updated_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Update At",
+ "description": "The date that the contact was last updated.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_audience_contact_id",
+ "methodNameCamel": "getAudienceContactId"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update Contact",
+ "description": "Update an existing omni-channel contact.",
+ "operationId": "patchAudienceContact",
+ "parameters": [
+ {
+ "name": "audience_id",
+ "x-title": "Audience ID",
+ "in": "path",
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "contact_id",
+ "x-title": "Contact ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the contact."
+ },
+ {
+ "name": "merge_field_validation_mode",
+ "x-title": "Merge Field Validation Mode",
+ "in": "query",
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ignore_required_checks",
+ "strict"
+ ]
+ },
+ {
+ "name": "data_mode",
+ "x-title": "Data Mode",
+ "in": "query",
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "historical",
+ "live"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "The unique ID for the contact.",
+ "example": "7CCF816ADF6CE1B11AE09BB024A02B9B",
+ "readOnly": true
+ },
+ "audience_id": {
+ "type": "string",
+ "title": "Audience ID",
+ "description": "The unique ID for the audience.",
+ "example": "773280e405",
+ "readOnly": true
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "enum": [
+ "en",
+ "ar",
+ "af",
+ "be",
+ "bg",
+ "ca",
+ "zh",
+ "zh_CN",
+ "hr",
+ "cs",
+ "da",
+ "nl",
+ "et",
+ "fa",
+ "fi",
+ "fr",
+ "fr_CA",
+ "de",
+ "el",
+ "he",
+ "hi",
+ "hu",
+ "is",
+ "id",
+ "ga",
+ "it",
+ "ja",
+ "km",
+ "ko",
+ "lv",
+ "lt",
+ "mt",
+ "ms",
+ "mk",
+ "no",
+ "pl",
+ "pt",
+ "pt_PT",
+ "ro",
+ "ru",
+ "sr",
+ "sk",
+ "sl",
+ "es",
+ "es_ES",
+ "sw",
+ "sv",
+ "ta",
+ "th",
+ "tr",
+ "uk",
+ "vi"
+ ],
+ "example": "en"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of a contact.",
+ "enum": [
+ "active",
+ "archived"
+ ],
+ "example": "active",
+ "readOnly": true
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "hashed_email": {
+ "type": "string",
+ "title": "Hashed Email Address",
+ "description": "MD5 hash of the email address",
+ "example": "9115d71ba28088047d342e3bcedacd0f"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+14045550102"
+ },
+ "hashed_sms_phone": {
+ "type": "string",
+ "title": "Hashed SMS Phone Number",
+ "description": "SHA256 hash of the SMS phone number",
+ "example": "0572084e1f8288816f02cdb7bd930c62400bc8aef510adfaa9eec2b995fa7609"
+ },
+ "effective_subscription_status": {
+ "type": "object",
+ "description": "A computation performed by the Mailchimp platform, triggered whenever any of its inputs change. Some inputs are controlled by API users, while others are tracked internally by the platform. Computation is based on: audience opt-in configuration (single vs. double opt-in), marketing consent status, and deliverability status (an internal state for a contact, maintained by Mailchimp for a specific marketing channel instance). This new API field is distinct from how contacts are displayed in the UI. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "properties": {
+ "value": {
+ "type": "string",
+ "title": "Effective Subscription Status",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags assigned to this contact.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag"
+ }
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Created At",
+ "description": "The date that the contact was created.",
+ "readOnly": true
+ },
+ "last_updated_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Update At",
+ "description": "The date that the contact was last updated.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "audiences",
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "patch_audience_contact",
+ "methodNameCamel": "patchAudienceContact"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "description": "An instance of a contact.",
+ "properties": {
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The subscribers detected language.",
+ "example": "EN"
+ },
+ "email_channel": {
+ "type": "object",
+ "title": "Email Channel Details",
+ "properties": {
+ "email": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address",
+ "example": "example@freddiemail.com"
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "sms_channel": {
+ "type": "object",
+ "title": "SMS Channel Details",
+ "properties": {
+ "sms_phone": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "SMS Phone Number",
+ "example": "+16155550128"
+ },
+ "marketing_consent": {
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Marketing Consent Status",
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ]
+ },
+ "source": {
+ "type": "object",
+ "title": "Source",
+ "description": "The source from which the parent's entity was created from.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Entity source name",
+ "description": "The name of the entity's source"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.",
+ "items": {
+ "type": "string",
+ "title": "Tag Name"
+ },
+ "example": [
+ "tag_to_add_1",
+ "tag_to_add_2"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/audiences/{audience_id}/contacts/{contact_id}/actions/archive": {
+ "post": {
+ "summary": "Archive Contact",
+ "description": "Archives a Contact.",
+ "parameters": [
+ {
+ "name": "audience_id",
+ "x-title": "Audience ID",
+ "in": "path",
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "contact_id",
+ "x-title": "Contact ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the contact."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "archive_contact",
+ "methodNameCamel": "archiveContact"
+ },
+ "operationId": "postAudiencesContactsActionsArchive",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/audiences/{audience_id}/contacts/{contact_id}/actions/forget": {
+ "post": {
+ "summary": "Forget Contact",
+ "description": "Forgets a Contact.",
+ "parameters": [
+ {
+ "name": "audience_id",
+ "x-title": "Audience ID",
+ "in": "path",
+ "description": "The unique ID for the audience.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "contact_id",
+ "x-title": "Contact ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the contact."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "contacts"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "forget_contact",
+ "methodNameCamel": "forgetContact"
+ },
+ "operationId": "postAudiencesContactsActionsForget",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/authorized-apps": {
+ "get": {
+ "summary": "List authorized apps",
+ "description": "Get a list of an account's registered, connected applications.",
+ "operationId": "getAuthorizedApps",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An array of objects, each representing an authorized application.",
+ "properties": {
+ "apps": {
+ "title": "Authorized Applications",
+ "description": "An array of objects, each representing an authorized application.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "description": "An authorized app.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Client ID",
+ "description": "The ID for the application."
+ },
+ "name": {
+ "type": "string",
+ "title": "Application Name",
+ "description": "The name of the application."
+ },
+ "description": {
+ "type": "string",
+ "title": "Application Description",
+ "description": "A short description of the application."
+ },
+ "users": {
+ "type": "array",
+ "title": "Application Users",
+ "description": "An array of usernames for users who have linked the app.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "authorizedApps"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/authorized-apps/{app_id}": {
+ "get": {
+ "summary": "Get authorized app info",
+ "description": "Get information about a specific authorized application.",
+ "operationId": "getAuthorizedAppsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "app_id",
+ "x-title": "App ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the connected authorized application."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An authorized app.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Client ID",
+ "description": "The ID for the application."
+ },
+ "name": {
+ "type": "string",
+ "title": "Application Name",
+ "description": "The name of the application."
+ },
+ "description": {
+ "type": "string",
+ "title": "Application Description",
+ "description": "A short description of the application."
+ },
+ "users": {
+ "type": "array",
+ "title": "Application Users",
+ "description": "An array of usernames for users who have linked the app.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "authorizedApps"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations": {
+ "get": {
+ "summary": "List automations",
+ "description": "Get a summary of an account's classic automations.",
+ "operationId": "getAutomations",
+ "parameters": [
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before_create_time",
+ "x-title": "Before Create Time",
+ "in": "query",
+ "description": "Restrict the response to automations created before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "since_create_time",
+ "x-title": "Since Create Time",
+ "in": "query",
+ "description": "Restrict the response to automations created after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "before_start_time",
+ "x-title": "Before Start Time",
+ "in": "query",
+ "description": "Restrict the response to automations started before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "since_start_time",
+ "x-title": "Since Start Time",
+ "in": "query",
+ "description": "Restrict the response to automations started after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "status",
+ "x-title": "Status",
+ "in": "query",
+ "description": "Restrict the results to automations with the specified status.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "save",
+ "paused",
+ "sending"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An array of objects, each representing an Automation workflow.",
+ "properties": {
+ "automations": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Automation Workflow",
+ "description": "A summary of an individual Automation workflow's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Automation Campaign ID",
+ "description": "A string that identifies the Automation.",
+ "readOnly": true
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the Automation was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the Automation was started in ISO 8601 format.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Automation Status",
+ "description": "The current status of the Automation.",
+ "enum": [
+ "save",
+ "paused",
+ "sending"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for the Automation.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the Automation.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "List Name."
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The id of the store.",
+ "example": "1a2df69xxx"
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Automation Campaign Settings",
+ "description": "The settings for the Automation workflow.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Automation Title",
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the Automation."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversations",
+ "description": "Whether to use Mailchimp Conversation feature to manage replies"
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The Automation's custom 'To' name, typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the Automation. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Whether to automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the Automation."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Whether to automatically inline the CSS included with the Automation content."
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Automation Tracking Options",
+ "description": "The tracking options for the Automation.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the Automation. Defaults to `true`."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the Automation. Defaults to `true`."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email addresses."
+ }
+ }
+ }
+ }
+ },
+ "trigger_settings": {
+ "type": "object",
+ "title": "Automation Trigger",
+ "description": "Available triggers for Automation workflows.",
+ "discriminator": "workflow_type",
+ "required": [
+ "workflow_type"
+ ],
+ "properties": {
+ "workflow_type": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow.",
+ "enum": [
+ "abandonedBrowse",
+ "abandonedCart",
+ "api",
+ "bestCustomers",
+ "categoryFollowup",
+ "dateAdded",
+ "emailFollowup",
+ "emailSeries",
+ "groupAdd",
+ "groupRemove",
+ "mandrill",
+ "productFollowup",
+ "purchaseFollowup",
+ "recurringEvent",
+ "specialEvent",
+ "visitUrl",
+ "welcomeSeries"
+ ]
+ },
+ "workflow_title": {
+ "type": "string",
+ "title": "Workflow Title",
+ "description": "The title of the workflow type.",
+ "readOnly": true
+ },
+ "runtime": {
+ "type": "object",
+ "title": "Automation Workflow Runtime Settings",
+ "description": "A workflow's runtime settings for an Automation.",
+ "properties": {
+ "days": {
+ "type": "array",
+ "title": "Days",
+ "description": "The days an Automation workflow can send.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ }
+ },
+ "hours": {
+ "type": "object",
+ "title": "Hours",
+ "description": "The hours an Automation workflow can send.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Email Send Time Settings",
+ "description": "When to send the Automation email.",
+ "enum": [
+ "send_asap",
+ "send_between",
+ "send_at"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "workflow_emails_count": {
+ "type": "integer",
+ "title": "Workflow Emails Count",
+ "description": "The number of emails in the Automation workflow.",
+ "readOnly": true
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "A summary of opens and clicks for sent campaigns.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks, divided by the total number of successful deliveries.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Automation Workflows",
+ "description": "An array of objects, each representing an Automation workflow."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add automation",
+ "description": "Create a new classic automation in your Mailchimp account.",
+ "operationId": "postAutomations",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Automation Workflow",
+ "description": "A summary of an individual Automation workflow's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Automation Campaign ID",
+ "description": "A string that identifies the Automation.",
+ "readOnly": true
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the Automation was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the Automation was started in ISO 8601 format.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Automation Status",
+ "description": "The current status of the Automation.",
+ "enum": [
+ "save",
+ "paused",
+ "sending"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for the Automation.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the Automation.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "List Name."
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The id of the store.",
+ "example": "1a2df69xxx"
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Automation Campaign Settings",
+ "description": "The settings for the Automation workflow.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Automation Title",
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the Automation."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversations",
+ "description": "Whether to use Mailchimp Conversation feature to manage replies"
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The Automation's custom 'To' name, typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the Automation. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Whether to automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the Automation."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Whether to automatically inline the CSS included with the Automation content."
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Automation Tracking Options",
+ "description": "The tracking options for the Automation.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the Automation. Defaults to `true`."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the Automation. Defaults to `true`."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email addresses."
+ }
+ }
+ }
+ }
+ },
+ "trigger_settings": {
+ "type": "object",
+ "title": "Automation Trigger",
+ "description": "Available triggers for Automation workflows.",
+ "discriminator": "workflow_type",
+ "required": [
+ "workflow_type"
+ ],
+ "properties": {
+ "workflow_type": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow.",
+ "enum": [
+ "abandonedBrowse",
+ "abandonedCart",
+ "api",
+ "bestCustomers",
+ "categoryFollowup",
+ "dateAdded",
+ "emailFollowup",
+ "emailSeries",
+ "groupAdd",
+ "groupRemove",
+ "mandrill",
+ "productFollowup",
+ "purchaseFollowup",
+ "recurringEvent",
+ "specialEvent",
+ "visitUrl",
+ "welcomeSeries"
+ ]
+ },
+ "workflow_title": {
+ "type": "string",
+ "title": "Workflow Title",
+ "description": "The title of the workflow type.",
+ "readOnly": true
+ },
+ "runtime": {
+ "type": "object",
+ "title": "Automation Workflow Runtime Settings",
+ "description": "A workflow's runtime settings for an Automation.",
+ "properties": {
+ "days": {
+ "type": "array",
+ "title": "Days",
+ "description": "The days an Automation workflow can send.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ }
+ },
+ "hours": {
+ "type": "object",
+ "title": "Hours",
+ "description": "The hours an Automation workflow can send.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Email Send Time Settings",
+ "description": "When to send the Automation email.",
+ "enum": [
+ "send_asap",
+ "send_between",
+ "send_at"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "workflow_emails_count": {
+ "type": "integer",
+ "title": "Workflow Emails Count",
+ "description": "The number of emails in the Automation workflow.",
+ "readOnly": true
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "A summary of opens and clicks for sent campaigns.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks, divided by the total number of successful deliveries.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Automation Workflow",
+ "description": "A summary of an individual Automation workflow's settings and content.",
+ "required": [
+ "recipients",
+ "trigger_settings"
+ ],
+ "properties": {
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the Automation.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The id of the List.",
+ "example": "1a2df69xxx"
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The id of the store.",
+ "example": "1a2df69xxx"
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Automation Campaign Settings",
+ "description": "The settings for the Automation workflow.",
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the Automation."
+ }
+ }
+ },
+ "trigger_settings": {
+ "type": "object",
+ "title": "Automation Trigger",
+ "description": "Trigger settings for the Automation.",
+ "required": [
+ "workflow_type"
+ ],
+ "properties": {
+ "workflow_type": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow. Currently only supports 'abandonedCart'."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/automations/{workflow_id}": {
+ "get": {
+ "summary": "Get automation info",
+ "description": "Get a summary of an individual classic automation workflow's settings and content. The `trigger_settings` object returns information for the first email in the workflow.",
+ "operationId": "getAutomationsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Automation Workflow",
+ "description": "A summary of an individual Automation workflow's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Automation Campaign ID",
+ "description": "A string that identifies the Automation.",
+ "readOnly": true
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the Automation was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the Automation was started in ISO 8601 format.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Automation Status",
+ "description": "The current status of the Automation.",
+ "enum": [
+ "save",
+ "paused",
+ "sending"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for the Automation.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the Automation.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "List Name."
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The id of the store.",
+ "example": "1a2df69xxx"
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Automation Campaign Settings",
+ "description": "The settings for the Automation workflow.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Automation Title",
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the Automation."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversations",
+ "description": "Whether to use Mailchimp Conversation feature to manage replies"
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The Automation's custom 'To' name, typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the Automation. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Whether to automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the Automation."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Whether to automatically inline the CSS included with the Automation content."
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Automation Tracking Options",
+ "description": "The tracking options for the Automation.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the Automation. Defaults to `true`."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the Automation. Defaults to `true`."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email addresses."
+ }
+ }
+ }
+ }
+ },
+ "trigger_settings": {
+ "type": "object",
+ "title": "Automation Trigger",
+ "description": "Available triggers for Automation workflows.",
+ "discriminator": "workflow_type",
+ "required": [
+ "workflow_type"
+ ],
+ "properties": {
+ "workflow_type": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow.",
+ "enum": [
+ "abandonedBrowse",
+ "abandonedCart",
+ "api",
+ "bestCustomers",
+ "categoryFollowup",
+ "dateAdded",
+ "emailFollowup",
+ "emailSeries",
+ "groupAdd",
+ "groupRemove",
+ "mandrill",
+ "productFollowup",
+ "purchaseFollowup",
+ "recurringEvent",
+ "specialEvent",
+ "visitUrl",
+ "welcomeSeries"
+ ]
+ },
+ "workflow_title": {
+ "type": "string",
+ "title": "Workflow Title",
+ "description": "The title of the workflow type.",
+ "readOnly": true
+ },
+ "runtime": {
+ "type": "object",
+ "title": "Automation Workflow Runtime Settings",
+ "description": "A workflow's runtime settings for an Automation.",
+ "properties": {
+ "days": {
+ "type": "array",
+ "title": "Days",
+ "description": "The days an Automation workflow can send.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ }
+ },
+ "hours": {
+ "type": "object",
+ "title": "Hours",
+ "description": "The hours an Automation workflow can send.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Email Send Time Settings",
+ "description": "When to send the Automation email.",
+ "enum": [
+ "send_asap",
+ "send_between",
+ "send_at"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "workflow_emails_count": {
+ "type": "integer",
+ "title": "Workflow Emails Count",
+ "description": "The number of emails in the Automation workflow.",
+ "readOnly": true
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "A summary of opens and clicks for sent campaigns.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks, divided by the total number of successful deliveries.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/actions/pause-all-emails": {
+ "post": {
+ "summary": "Pause automation emails",
+ "description": "Pause all emails in a specific classic automation workflow.",
+ "operationId": "postAutomationsIdActionsPauseAllEmails",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "pause_all_emails",
+ "methodNameCamel": "pauseAllEmails"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/actions/start-all-emails": {
+ "post": {
+ "summary": "Start automation emails",
+ "description": "Start all emails in a classic automation workflow.",
+ "operationId": "postAutomationsIdActionsStartAllEmails",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "start_all_emails",
+ "methodNameCamel": "startAllEmails"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/actions/archive": {
+ "post": {
+ "summary": "Archive automation",
+ "description": "Archiving will permanently end your automation and keep the report data. You\u2019ll be able to replicate your archived automation, but you can\u2019t restart it.",
+ "operationId": "archiveAutomations",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "archive",
+ "methodNameCamel": "archive"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/emails": {
+ "get": {
+ "summary": "List automated emails",
+ "description": "Get a summary of the emails in a classic automation workflow.",
+ "operationId": "getAutomationsIdEmails",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Automation Emails",
+ "description": "A summary of the emails in an Automation workflow.",
+ "properties": {
+ "emails": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Automation Workflow Email",
+ "description": "A summary of an individual Automation workflow email.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Automation Email ID",
+ "description": "A string that uniquely identifies the Automation email.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Automation Web ID",
+ "description": "The ID used in the Mailchimp web application. View this automation in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true,
+ "example": 33345484
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "position": {
+ "type": "integer",
+ "title": "Email Position",
+ "description": "The position of an Automation email in a workflow.",
+ "readOnly": true
+ },
+ "delay": {
+ "type": "object",
+ "title": "Automation Delay",
+ "description": "The delay settings for an Automation email.",
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "title": "Delay Amount",
+ "description": "The delay amount for an Automation email.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "title": "Delay Type",
+ "description": "The type of delay for an Automation email."
+ },
+ "direction": {
+ "type": "string",
+ "title": "Delay Direction",
+ "description": "Whether the delay settings describe before or after the delay action of an Automation email.",
+ "enum": [
+ "before",
+ "after"
+ ]
+ },
+ "action": {
+ "type": "string",
+ "title": "Delay Action",
+ "description": "The action that triggers the delay of an Automation email.",
+ "enum": [
+ "previous_campaign_sent",
+ "previous_campaign_opened",
+ "previous_campaign_not_opened",
+ "previous_campaign_clicked_any",
+ "previous_campaign_not_clicked_any",
+ "previous_campaign_specific_clicked",
+ "ecomm_bought_any",
+ "ecomm_bought_product",
+ "ecomm_bought_category",
+ "ecomm_not_bought_any",
+ "ecomm_abandoned_cart",
+ "campaign_sent",
+ "opened_email",
+ "not_opened_email",
+ "clicked_email",
+ "not_clicked_email",
+ "campaign_specific_clicked",
+ "manual",
+ "signup",
+ "merge_changed",
+ "group_add",
+ "group_remove",
+ "mandrill_sent",
+ "mandrill_opened",
+ "mandrill_clicked",
+ "mandrill_any",
+ "api",
+ "goal",
+ "annual",
+ "birthday",
+ "date",
+ "date_added",
+ "tag_add"
+ ]
+ },
+ "action_description": {
+ "type": "string",
+ "title": "Delay Action Description",
+ "description": "The user-friendly description of the action that triggers an Automation email.",
+ "example": "subscribers purchase anything from your store",
+ "readOnly": true
+ },
+ "full_description": {
+ "type": "string",
+ "title": "Full Delay Description",
+ "description": "The user-friendly description of the delay and trigger action settings for an Automation email.",
+ "example": "1 day after subscribers purchase anything from your store",
+ "readOnly": true
+ }
+ }
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the campaign was started in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "sending"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "title": "Send Time",
+ "format": "date-time",
+ "description": " The date and time a campaign was sent in ISO 8601 format",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together ('template', 'drag_and_drop', 'html', 'url').",
+ "readOnly": true
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the automation email needs its blocks refreshed by opening the web-based campaign editor.",
+ "readOnly": true,
+ "example": true
+ },
+ "has_logo_merge_tag": {
+ "type": "boolean",
+ "title": "Has Logo Merge Tag",
+ "description": "Determines if the campaign contains the *|BRAND:LOGO|* merge tag.",
+ "readOnly": true,
+ "example": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/getting-started-with-groups/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "Settings for the campaign including the email subject, from name, and from email address.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign."
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [Click Tale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "trigger_settings": {
+ "type": "object",
+ "title": "Automation Trigger",
+ "description": "Available triggers for Automation workflows.",
+ "discriminator": "workflow_type",
+ "required": [
+ "workflow_type"
+ ],
+ "properties": {
+ "workflow_type": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow.",
+ "enum": [
+ "abandonedBrowse",
+ "abandonedCart",
+ "api",
+ "bestCustomers",
+ "categoryFollowup",
+ "dateAdded",
+ "emailFollowup",
+ "emailSeries",
+ "groupAdd",
+ "groupRemove",
+ "mandrill",
+ "productFollowup",
+ "purchaseFollowup",
+ "recurringEvent",
+ "specialEvent",
+ "visitUrl",
+ "welcomeSeries"
+ ]
+ },
+ "workflow_title": {
+ "type": "string",
+ "title": "Workflow Title",
+ "description": "The title of the workflow type.",
+ "readOnly": true
+ },
+ "runtime": {
+ "type": "object",
+ "title": "Automation Workflow Runtime Settings",
+ "description": "A workflow's runtime settings for an Automation.",
+ "properties": {
+ "days": {
+ "type": "array",
+ "title": "Days",
+ "description": "The days an Automation workflow can send.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ }
+ },
+ "hours": {
+ "type": "object",
+ "title": "Hours",
+ "description": "The hours an Automation workflow can send.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Email Send Time Settings",
+ "description": "When to send the Automation email.",
+ "enum": [
+ "send_asap",
+ "send_between",
+ "send_at"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "workflow_emails_count": {
+ "type": "integer",
+ "title": "Workflow Emails Count",
+ "description": "The number of emails in the Automation workflow.",
+ "readOnly": true
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens and clicks.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Emails",
+ "description": "An array of objects, each representing an email in an Automation workflow."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_all_workflow_emails",
+ "methodNameCamel": "listAllWorkflowEmails"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/emails/{workflow_email_id}": {
+ "get": {
+ "summary": "Get workflow email info",
+ "description": "Get information about an individual classic automation workflow email.",
+ "operationId": "getAutomationsIdEmailsId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Automation Workflow Email",
+ "description": "A summary of an individual Automation workflow email.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Automation Email ID",
+ "description": "A string that uniquely identifies the Automation email.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Automation Web ID",
+ "description": "The ID used in the Mailchimp web application. View this automation in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true,
+ "example": 33345484
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "position": {
+ "type": "integer",
+ "title": "Email Position",
+ "description": "The position of an Automation email in a workflow.",
+ "readOnly": true
+ },
+ "delay": {
+ "type": "object",
+ "title": "Automation Delay",
+ "description": "The delay settings for an Automation email.",
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "title": "Delay Amount",
+ "description": "The delay amount for an Automation email.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "title": "Delay Type",
+ "description": "The type of delay for an Automation email."
+ },
+ "direction": {
+ "type": "string",
+ "title": "Delay Direction",
+ "description": "Whether the delay settings describe before or after the delay action of an Automation email.",
+ "enum": [
+ "before",
+ "after"
+ ]
+ },
+ "action": {
+ "type": "string",
+ "title": "Delay Action",
+ "description": "The action that triggers the delay of an Automation email.",
+ "enum": [
+ "previous_campaign_sent",
+ "previous_campaign_opened",
+ "previous_campaign_not_opened",
+ "previous_campaign_clicked_any",
+ "previous_campaign_not_clicked_any",
+ "previous_campaign_specific_clicked",
+ "ecomm_bought_any",
+ "ecomm_bought_product",
+ "ecomm_bought_category",
+ "ecomm_not_bought_any",
+ "ecomm_abandoned_cart",
+ "campaign_sent",
+ "opened_email",
+ "not_opened_email",
+ "clicked_email",
+ "not_clicked_email",
+ "campaign_specific_clicked",
+ "manual",
+ "signup",
+ "merge_changed",
+ "group_add",
+ "group_remove",
+ "mandrill_sent",
+ "mandrill_opened",
+ "mandrill_clicked",
+ "mandrill_any",
+ "api",
+ "goal",
+ "annual",
+ "birthday",
+ "date",
+ "date_added",
+ "tag_add"
+ ]
+ },
+ "action_description": {
+ "type": "string",
+ "title": "Delay Action Description",
+ "description": "The user-friendly description of the action that triggers an Automation email.",
+ "example": "subscribers purchase anything from your store",
+ "readOnly": true
+ },
+ "full_description": {
+ "type": "string",
+ "title": "Full Delay Description",
+ "description": "The user-friendly description of the delay and trigger action settings for an Automation email.",
+ "example": "1 day after subscribers purchase anything from your store",
+ "readOnly": true
+ }
+ }
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the campaign was started in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "sending"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "title": "Send Time",
+ "format": "date-time",
+ "description": " The date and time a campaign was sent in ISO 8601 format",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together ('template', 'drag_and_drop', 'html', 'url').",
+ "readOnly": true
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the automation email needs its blocks refreshed by opening the web-based campaign editor.",
+ "readOnly": true,
+ "example": true
+ },
+ "has_logo_merge_tag": {
+ "type": "boolean",
+ "title": "Has Logo Merge Tag",
+ "description": "Determines if the campaign contains the *|BRAND:LOGO|* merge tag.",
+ "readOnly": true,
+ "example": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/getting-started-with-groups/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "Settings for the campaign including the email subject, from name, and from email address.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign."
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [Click Tale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "trigger_settings": {
+ "type": "object",
+ "title": "Automation Trigger",
+ "description": "Available triggers for Automation workflows.",
+ "discriminator": "workflow_type",
+ "required": [
+ "workflow_type"
+ ],
+ "properties": {
+ "workflow_type": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow.",
+ "enum": [
+ "abandonedBrowse",
+ "abandonedCart",
+ "api",
+ "bestCustomers",
+ "categoryFollowup",
+ "dateAdded",
+ "emailFollowup",
+ "emailSeries",
+ "groupAdd",
+ "groupRemove",
+ "mandrill",
+ "productFollowup",
+ "purchaseFollowup",
+ "recurringEvent",
+ "specialEvent",
+ "visitUrl",
+ "welcomeSeries"
+ ]
+ },
+ "workflow_title": {
+ "type": "string",
+ "title": "Workflow Title",
+ "description": "The title of the workflow type.",
+ "readOnly": true
+ },
+ "runtime": {
+ "type": "object",
+ "title": "Automation Workflow Runtime Settings",
+ "description": "A workflow's runtime settings for an Automation.",
+ "properties": {
+ "days": {
+ "type": "array",
+ "title": "Days",
+ "description": "The days an Automation workflow can send.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ }
+ },
+ "hours": {
+ "type": "object",
+ "title": "Hours",
+ "description": "The hours an Automation workflow can send.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Email Send Time Settings",
+ "description": "When to send the Automation email.",
+ "enum": [
+ "send_asap",
+ "send_between",
+ "send_at"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "workflow_emails_count": {
+ "type": "integer",
+ "title": "Workflow Emails Count",
+ "description": "The number of emails in the Automation workflow.",
+ "readOnly": true
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens and clicks.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_workflow_email",
+ "methodNameCamel": "getWorkflowEmail"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "delete": {
+ "summary": "Delete workflow email",
+ "description": "Removes an individual classic automation workflow email. Emails from certain workflow types, including the Abandoned Cart Email (abandonedCart) and Product Retargeting Email (abandonedBrowse) Workflows, cannot be deleted.",
+ "operationId": "deleteAutomationsIdEmailsId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_workflow_email",
+ "methodNameCamel": "deleteWorkflowEmail"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update workflow email",
+ "description": "Update settings for a classic automation workflow email. Only works with workflows of type: abandonedBrowse, abandonedCart, emailFollowup, or singleWelcome.",
+ "operationId": "patchAutomationEmailWorkflowId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Automation Workflow Email",
+ "description": "A summary of an individual Automation workflow email.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Automation Email ID",
+ "description": "A string that uniquely identifies the Automation email.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Automation Web ID",
+ "description": "The ID used in the Mailchimp web application. View this automation in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true,
+ "example": 33345484
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "position": {
+ "type": "integer",
+ "title": "Email Position",
+ "description": "The position of an Automation email in a workflow.",
+ "readOnly": true
+ },
+ "delay": {
+ "type": "object",
+ "title": "Automation Delay",
+ "description": "The delay settings for an Automation email.",
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "title": "Delay Amount",
+ "description": "The delay amount for an Automation email.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "title": "Delay Type",
+ "description": "The type of delay for an Automation email."
+ },
+ "direction": {
+ "type": "string",
+ "title": "Delay Direction",
+ "description": "Whether the delay settings describe before or after the delay action of an Automation email.",
+ "enum": [
+ "before",
+ "after"
+ ]
+ },
+ "action": {
+ "type": "string",
+ "title": "Delay Action",
+ "description": "The action that triggers the delay of an Automation email.",
+ "enum": [
+ "previous_campaign_sent",
+ "previous_campaign_opened",
+ "previous_campaign_not_opened",
+ "previous_campaign_clicked_any",
+ "previous_campaign_not_clicked_any",
+ "previous_campaign_specific_clicked",
+ "ecomm_bought_any",
+ "ecomm_bought_product",
+ "ecomm_bought_category",
+ "ecomm_not_bought_any",
+ "ecomm_abandoned_cart",
+ "campaign_sent",
+ "opened_email",
+ "not_opened_email",
+ "clicked_email",
+ "not_clicked_email",
+ "campaign_specific_clicked",
+ "manual",
+ "signup",
+ "merge_changed",
+ "group_add",
+ "group_remove",
+ "mandrill_sent",
+ "mandrill_opened",
+ "mandrill_clicked",
+ "mandrill_any",
+ "api",
+ "goal",
+ "annual",
+ "birthday",
+ "date",
+ "date_added",
+ "tag_add"
+ ]
+ },
+ "action_description": {
+ "type": "string",
+ "title": "Delay Action Description",
+ "description": "The user-friendly description of the action that triggers an Automation email.",
+ "example": "subscribers purchase anything from your store",
+ "readOnly": true
+ },
+ "full_description": {
+ "type": "string",
+ "title": "Full Delay Description",
+ "description": "The user-friendly description of the delay and trigger action settings for an Automation email.",
+ "example": "1 day after subscribers purchase anything from your store",
+ "readOnly": true
+ }
+ }
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the campaign was started in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "sending"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "title": "Send Time",
+ "format": "date-time",
+ "description": " The date and time a campaign was sent in ISO 8601 format",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together ('template', 'drag_and_drop', 'html', 'url').",
+ "readOnly": true
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the automation email needs its blocks refreshed by opening the web-based campaign editor.",
+ "readOnly": true,
+ "example": true
+ },
+ "has_logo_merge_tag": {
+ "type": "boolean",
+ "title": "Has Logo Merge Tag",
+ "description": "Determines if the campaign contains the *|BRAND:LOGO|* merge tag.",
+ "readOnly": true,
+ "example": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/getting-started-with-groups/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "Settings for the campaign including the email subject, from name, and from email address.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign."
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [Click Tale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on a subscriber's email address."
+ }
+ }
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "trigger_settings": {
+ "type": "object",
+ "title": "Automation Trigger",
+ "description": "Available triggers for Automation workflows.",
+ "discriminator": "workflow_type",
+ "required": [
+ "workflow_type"
+ ],
+ "properties": {
+ "workflow_type": {
+ "type": "string",
+ "title": "Workflow Type",
+ "description": "The type of Automation workflow.",
+ "enum": [
+ "abandonedBrowse",
+ "abandonedCart",
+ "api",
+ "bestCustomers",
+ "categoryFollowup",
+ "dateAdded",
+ "emailFollowup",
+ "emailSeries",
+ "groupAdd",
+ "groupRemove",
+ "mandrill",
+ "productFollowup",
+ "purchaseFollowup",
+ "recurringEvent",
+ "specialEvent",
+ "visitUrl",
+ "welcomeSeries"
+ ]
+ },
+ "workflow_title": {
+ "type": "string",
+ "title": "Workflow Title",
+ "description": "The title of the workflow type.",
+ "readOnly": true
+ },
+ "runtime": {
+ "type": "object",
+ "title": "Automation Workflow Runtime Settings",
+ "description": "A workflow's runtime settings for an Automation.",
+ "properties": {
+ "days": {
+ "type": "array",
+ "title": "Days",
+ "description": "The days an Automation workflow can send.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ]
+ }
+ },
+ "hours": {
+ "type": "object",
+ "title": "Hours",
+ "description": "The hours an Automation workflow can send.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Email Send Time Settings",
+ "description": "When to send the Automation email.",
+ "enum": [
+ "send_asap",
+ "send_between",
+ "send_at"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "workflow_emails_count": {
+ "type": "integer",
+ "title": "Workflow Emails Count",
+ "description": "The number of emails in the Automation workflow.",
+ "readOnly": true
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens and clicks.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_workflow_email",
+ "methodNameCamel": "updateWorkflowEmail"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Update information about a specific workflow email",
+ "description": "Update information about an individual Automation workflow email.",
+ "properties": {
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "Settings for the campaign including the email subject, from name, and from email address.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Automation Title",
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the Automation."
+ }
+ }
+ },
+ "delay": {
+ "type": "object",
+ "title": "Automation Delay",
+ "description": "The delay settings for an automation email.",
+ "required": [
+ "action"
+ ],
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "title": "Delay Amount",
+ "description": "The delay amount for an automation email.",
+ "example": 1
+ },
+ "type": {
+ "type": "string",
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "title": "Delay Type",
+ "description": "The type of delay for an automation email.",
+ "example": "day"
+ },
+ "direction": {
+ "type": "string",
+ "title": "Delay Direction",
+ "description": "Whether the delay settings describe before or after the delay action of an automation email.",
+ "enum": [
+ "after"
+ ],
+ "example": "after"
+ },
+ "action": {
+ "type": "string",
+ "title": "Delay Action",
+ "description": "The action that triggers the delay of an automation emails.",
+ "enum": [
+ "signup",
+ "ecomm_abandoned_browse",
+ "ecomm_abandoned_cart"
+ ],
+ "example": "signup"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/automations/{workflow_id}/emails/{workflow_email_id}/queue": {
+ "get": {
+ "summary": "List automated email subscribers",
+ "description": "Get information about a classic automation email queue.",
+ "operationId": "getAutomationsIdEmailsIdQueue",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An automation workflow",
+ "properties": {
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Automation Email ID",
+ "description": "A string that uniquely identifies an email in an Automation workflow.",
+ "readOnly": true
+ },
+ "queue": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Subscriber in Automation Queue",
+ "description": "Information about subscribers in an Automation email queue.",
+ "required": [
+ "email_address"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Automation Email ID",
+ "description": "A string that uniquely identifies an email in an Automation workflow.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies a list.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "next_send": {
+ "type": "string",
+ "title": "Next Send",
+ "format": "date-time",
+ "description": "The date and time of the next send for the workflow email in ISO 8601 format.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Trigger",
+ "description": "An array of objects, each representing a subscriber queue for an email in an Automation workflow.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_workflow_email_subscriber_queue",
+ "methodNameCamel": "getWorkflowEmailSubscriberQueue"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add subscriber to workflow email",
+ "description": "Manually add a subscriber to a workflow, bypassing the default trigger settings. You can also use this endpoint to trigger a series of automated emails in an API 3.0 workflow type.",
+ "operationId": "postAutomationsIdEmailsIdQueue",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber in Automation Queue",
+ "description": "Information about subscribers in an Automation email queue.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Automation Email ID",
+ "description": "A string that uniquely identifies an email in an Automation workflow.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies a list.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "next_send": {
+ "type": "string",
+ "title": "Next Send",
+ "format": "date-time",
+ "description": "The date and time of the next send for the workflow email in ISO 8601 format.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_workflow_email_subscriber",
+ "methodNameCamel": "addWorkflowEmailSubscriber"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Subscriber in Automation Queue",
+ "description": "Information about subscribers in an Automation email queue.",
+ "required": [
+ "email_address"
+ ],
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/automations/{workflow_id}/emails/{workflow_email_id}/queue/{subscriber_hash}": {
+ "get": {
+ "summary": "Get automated email subscriber",
+ "description": "Get information about a specific subscriber in a classic automation email queue.",
+ "operationId": "getAutomationsIdEmailsIdQueueId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber in Automation Queue",
+ "description": "Information about subscribers in an Automation email queue.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Automation Email ID",
+ "description": "A string that uniquely identifies an email in an Automation workflow.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies a list.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "next_send": {
+ "type": "string",
+ "title": "Next Send",
+ "format": "date-time",
+ "description": "The date and time of the next send for the workflow email in ISO 8601 format.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_workflow_email_subscriber",
+ "methodNameCamel": "getWorkflowEmailSubscriber"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/emails/{workflow_email_id}/actions/pause": {
+ "post": {
+ "summary": "Pause automated email",
+ "description": "Pause an automated email.",
+ "operationId": "postAutomationsIdEmailsIdActionsPause",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "pause_workflow_email",
+ "methodNameCamel": "pauseWorkflowEmail"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/emails/{workflow_email_id}/actions/start": {
+ "post": {
+ "summary": "Start automated email",
+ "description": "Start an automated email.",
+ "operationId": "postAutomationsIdEmailsIdActionsStart",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "workflow_email_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow email."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "start_workflow_email",
+ "methodNameCamel": "startWorkflowEmail"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/automations/{workflow_id}/removed-subscribers": {
+ "get": {
+ "summary": "List subscribers removed from workflow",
+ "description": "Get information about subscribers who were removed from a classic automation workflow.",
+ "operationId": "getAutomationsIdRemovedSubscribers",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Removed Subscribers",
+ "description": "A summary of the subscribers who were removed from an Automation workflow.",
+ "properties": {
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "subscribers": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Subscriber Removed from Automation Workflow",
+ "description": "A summary of a subscriber removed from an Automation workflow.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies a list.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Trigger",
+ "description": "An array of objects, each representing a subscriber who was removed from an Automation workflow.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_workflow_email_subscribers_removed",
+ "methodNameCamel": "listWorkflowEmailSubscribersRemoved"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Remove subscriber from workflow",
+ "description": "Remove a subscriber from a specific classic automation workflow. You can remove a subscriber at any point in an automation workflow, regardless of how many emails they've been sent from that workflow. Once they're removed, they can never be added back to the same workflow.",
+ "operationId": "postAutomationsIdRemovedSubscribers",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber Removed from Automation Workflow",
+ "description": "A summary of a subscriber removed from an Automation workflow.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies a list.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "remove_workflow_email_subscriber",
+ "methodNameCamel": "removeWorkflowEmailSubscriber"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Subscriber in Automation Queue",
+ "description": "Information about subscribers in an Automation email queue.",
+ "required": [
+ "email_address"
+ ],
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/automations/{workflow_id}/removed-subscribers/{subscriber_hash}": {
+ "get": {
+ "summary": "Get subscriber removed from workflow",
+ "description": "Get information about a specific subscriber who was removed from a classic automation workflow.",
+ "operationId": "getAutomationsIdRemovedSubscribersId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "workflow_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the Automation workflow."
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber Removed from Automation Workflow",
+ "description": "A summary of a subscriber removed from an Automation workflow.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "workflow_id": {
+ "type": "string",
+ "title": "Workflow ID",
+ "description": "A string that uniquely identifies an Automation workflow.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies a list.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "automations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_removed_workflow_email_subscriber",
+ "methodNameCamel": "getRemovedWorkflowEmailSubscriber"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/batches": {
+ "get": {
+ "summary": "List batch requests",
+ "description": "Get a summary of batch requests that have been made.",
+ "operationId": "getBatches",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch Operations",
+ "description": "A summary of batch requests that have been made.",
+ "properties": {
+ "batches": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Batch",
+ "description": "The status of a batch request",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Batch ID",
+ "description": "A string that uniquely identifies this batch request.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of the batch call. [Learn more](https://mailchimp.com/developer/marketing/guides/run-async-requests-batch-endpoint/#check-the-status-of-a-batch-operation) about the batch operation status.",
+ "enum": [
+ "pending",
+ "preprocessing",
+ "started",
+ "finalizing",
+ "finished"
+ ],
+ "readOnly": true
+ },
+ "total_operations": {
+ "type": "integer",
+ "title": "Total Operations",
+ "description": "The total number of operations to complete as part of this batch request. For GET requests requiring pagination, each page counts as a separate operation.",
+ "readOnly": true
+ },
+ "finished_operations": {
+ "type": "integer",
+ "title": "Finished Operations",
+ "description": "The number of completed operations. This includes operations that returned an error.",
+ "readOnly": true
+ },
+ "errored_operations": {
+ "type": "integer",
+ "title": "Error Operations",
+ "description": "The number of completed operations that returned an error.",
+ "readOnly": true
+ },
+ "submitted_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Submitted At",
+ "description": "The date and time when the server received the batch request in ISO 8601 format.",
+ "readOnly": true
+ },
+ "completed_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Completed At",
+ "description": "The date and time when all operations in the batch request completed in ISO 8601 format.",
+ "readOnly": true
+ },
+ "response_body_url": {
+ "type": "string",
+ "title": "Response Body URL",
+ "description": "The URL of the gzipped archive of the results of all the operations.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Batches",
+ "description": "An array of objects representing batch calls."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batches"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Start batch operation",
+ "description": "Begin processing a batch operations request.",
+ "operationId": "postBatches",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch",
+ "description": "The status of a batch request",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Batch ID",
+ "description": "A string that uniquely identifies this batch request.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of the batch call. [Learn more](https://mailchimp.com/developer/marketing/guides/run-async-requests-batch-endpoint/#check-the-status-of-a-batch-operation) about the batch operation status.",
+ "enum": [
+ "pending",
+ "preprocessing",
+ "started",
+ "finalizing",
+ "finished"
+ ],
+ "readOnly": true
+ },
+ "total_operations": {
+ "type": "integer",
+ "title": "Total Operations",
+ "description": "The total number of operations to complete as part of this batch request. For GET requests requiring pagination, each page counts as a separate operation.",
+ "readOnly": true
+ },
+ "finished_operations": {
+ "type": "integer",
+ "title": "Finished Operations",
+ "description": "The number of completed operations. This includes operations that returned an error.",
+ "readOnly": true
+ },
+ "errored_operations": {
+ "type": "integer",
+ "title": "Error Operations",
+ "description": "The number of completed operations that returned an error.",
+ "readOnly": true
+ },
+ "submitted_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Submitted At",
+ "description": "The date and time when the server received the batch request in ISO 8601 format.",
+ "readOnly": true
+ },
+ "completed_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Completed At",
+ "description": "The date and time when all operations in the batch request completed in ISO 8601 format.",
+ "readOnly": true
+ },
+ "response_body_url": {
+ "type": "string",
+ "title": "Response Body URL",
+ "description": "The URL of the gzipped archive of the results of all the operations.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batches"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "start",
+ "methodNameCamel": "start"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "required": [
+ "operations"
+ ],
+ "properties": {
+ "operations": {
+ "type": "array",
+ "title": "Operations List",
+ "description": "An array of objects that describes operations to perform.",
+ "items": {
+ "type": "object",
+ "title": "Operations",
+ "required": [
+ "method",
+ "path"
+ ],
+ "properties": {
+ "method": {
+ "type": "string",
+ "title": "HTTP Method",
+ "description": "The HTTP method to use for the operation.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE"
+ ],
+ "example": "POST"
+ },
+ "path": {
+ "type": "string",
+ "title": "Path",
+ "description": "The relative path to use for the operation.",
+ "example": "/lists"
+ },
+ "params": {
+ "type": "object",
+ "title": "Query Parameters",
+ "description": "Any request query parameters. Example parameters: {\"count\":10, \"offset\":0}",
+ "example": "{\"count\":10,\"offset\":0}"
+ },
+ "body": {
+ "type": "string",
+ "title": "Body",
+ "description": "A string containing the JSON body to use with the request.",
+ "example": "{\"title\":\"Test\"}"
+ },
+ "operation_id": {
+ "type": "string",
+ "title": "Operation ID",
+ "description": "An optional client-supplied id returned with the operation results.",
+ "example": "my-id-123"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/batches/{batch_id}": {
+ "get": {
+ "summary": "Get batch operation status",
+ "description": "Get the status of a batch request.",
+ "operationId": "getBatchesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "batch_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the batch operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch",
+ "description": "The status of a batch request",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Batch ID",
+ "description": "A string that uniquely identifies this batch request.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of the batch call. [Learn more](https://mailchimp.com/developer/marketing/guides/run-async-requests-batch-endpoint/#check-the-status-of-a-batch-operation) about the batch operation status.",
+ "enum": [
+ "pending",
+ "preprocessing",
+ "started",
+ "finalizing",
+ "finished"
+ ],
+ "readOnly": true
+ },
+ "total_operations": {
+ "type": "integer",
+ "title": "Total Operations",
+ "description": "The total number of operations to complete as part of this batch request. For GET requests requiring pagination, each page counts as a separate operation.",
+ "readOnly": true
+ },
+ "finished_operations": {
+ "type": "integer",
+ "title": "Finished Operations",
+ "description": "The number of completed operations. This includes operations that returned an error.",
+ "readOnly": true
+ },
+ "errored_operations": {
+ "type": "integer",
+ "title": "Error Operations",
+ "description": "The number of completed operations that returned an error.",
+ "readOnly": true
+ },
+ "submitted_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Submitted At",
+ "description": "The date and time when the server received the batch request in ISO 8601 format.",
+ "readOnly": true
+ },
+ "completed_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Completed At",
+ "description": "The date and time when all operations in the batch request completed in ISO 8601 format.",
+ "readOnly": true
+ },
+ "response_body_url": {
+ "type": "string",
+ "title": "Response Body URL",
+ "description": "The URL of the gzipped archive of the results of all the operations.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batches"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "status",
+ "methodNameCamel": "status"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "delete": {
+ "summary": "Delete batch request",
+ "description": "Stops a batch request from running. Since only one batch request is run at a time, this can be used to cancel a long running request. The results of any completed operations will not be available after this call.",
+ "operationId": "deleteBatchesId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "batch_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the batch operation."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batches"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_request",
+ "methodNameCamel": "deleteRequest"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/batch-webhooks": {
+ "get": {
+ "summary": "List batch webhooks",
+ "description": "Get all webhooks that have been configured for batches.",
+ "operationId": "getBatchWebhooks",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch Webhooks",
+ "description": "Manage webhooks for batch requests.",
+ "properties": {
+ "webhooks": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Batch Webhook",
+ "description": "A webhook configured for batch status updates.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Batch Webhook ID",
+ "description": "A string that uniquely identifies this Batch Webhook.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": false,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "readOnly": false,
+ "example": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Webhooks",
+ "description": "An array of objects, each representing a Batch Webhook."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batchWebhooks"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add batch webhook",
+ "description": "Configure a webhook that will fire whenever any batch request completes processing. You may only have a maximum of 20 batch webhooks.",
+ "operationId": "postBatchWebhooks",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch Webhook",
+ "description": "A webhook configured for batch status updates.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Batch Webhook ID",
+ "description": "A string that uniquely identifies this Batch Webhook.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": false,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "readOnly": false,
+ "example": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batchWebhooks"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Batch Webhook",
+ "description": "Add a new Batch Webook.",
+ "required": [
+ "url"
+ ],
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "example": true
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/batch-webhooks/{batch_webhook_id}": {
+ "get": {
+ "summary": "Get batch webhook info",
+ "description": "Get information about a specific batch webhook.",
+ "operationId": "getBatchWebhook",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "batch_webhook_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the batch webhook."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch Webhook",
+ "description": "A webhook configured for batch status updates.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Batch Webhook ID",
+ "description": "A string that uniquely identifies this Batch Webhook.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": false,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "readOnly": false,
+ "example": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batchWebhooks"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update batch webhook",
+ "description": "Update a webhook that will fire whenever any batch request completes processing.",
+ "operationId": "patchBatchWebhooks",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "batch_webhook_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the batch webhook."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch Webhook",
+ "description": "A webhook configured for batch status updates.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Batch Webhook ID",
+ "description": "A string that uniquely identifies this Batch Webhook.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": false,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "readOnly": false,
+ "example": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batchWebhooks"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update",
+ "methodNameCamel": "update"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Batch Webhook",
+ "description": "Update an existing Batch Webook.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "example": true
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete batch webhook",
+ "description": "Remove a batch webhook. Webhooks will no longer be sent to the given URL.",
+ "operationId": "deleteBatchWebhookId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "batch_webhook_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the batch webhook."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "batchWebhooks"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "remove",
+ "methodNameCamel": "remove"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/template-folders": {
+ "get": {
+ "summary": "List template folders",
+ "description": "Get all folders used to organize templates.",
+ "operationId": "getTemplateFolders",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Folders",
+ "description": "A list of template folders",
+ "properties": {
+ "folders": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Template Folder",
+ "description": "A folder used to organize templates.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this template folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Template Count",
+ "description": "The number of templates in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Template Folders",
+ "description": "An array of objects representing template folders."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templateFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add template folder",
+ "description": "Create a new template folder.",
+ "operationId": "postTemplateFolders",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Folder",
+ "description": "A folder used to organize templates.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this template folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Template Count",
+ "description": "The number of templates in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templateFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Template Folder",
+ "description": "A folder used to organize templates.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/template-folders/{folder_id}": {
+ "get": {
+ "summary": "Get template folder",
+ "description": "Get information about a specific folder used to organize templates.",
+ "operationId": "getTemplateFoldersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "folder_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the template folder."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Folder",
+ "description": "A folder used to organize templates.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this template folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Template Count",
+ "description": "The number of templates in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templateFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update template folder",
+ "description": "Update a specific folder used to organize templates.",
+ "operationId": "patchTemplateFoldersId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "folder_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the template folder."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Folder",
+ "description": "A folder used to organize templates.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this template folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Template Count",
+ "description": "The number of templates in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templateFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update",
+ "methodNameCamel": "update"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Template Folder",
+ "description": "A folder used to organize templates.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete template folder",
+ "description": "Delete a specific template folder, and mark all the templates in the folder as 'unfiled'.",
+ "operationId": "deleteTemplateFoldersId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "folder_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the template folder."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templateFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "remove",
+ "methodNameCamel": "remove"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaign-folders": {
+ "get": {
+ "summary": "List campaign folders",
+ "description": "Get all folders used to organize campaigns.",
+ "operationId": "getCampaignFolders",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Folders",
+ "description": "A list of campaign folders",
+ "properties": {
+ "folders": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Campaign Folder",
+ "description": "A folder used to organize campaigns.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this campaign folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Campaign Folders",
+ "description": "An array of objects representing campaign folders."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaignFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add campaign folder",
+ "description": "Create a new campaign folder.",
+ "operationId": "postCampaignFolders",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Folder",
+ "description": "A folder used to organize campaigns.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this campaign folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaignFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Campaign Folder",
+ "description": "A folder used to organize campaigns.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "Name to associate with the folder."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/campaign-folders/{folder_id}": {
+ "get": {
+ "summary": "Get campaign folder",
+ "description": "Get information about a specific folder used to organize campaigns.",
+ "operationId": "getCampaignFoldersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "folder_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign folder."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Folder",
+ "description": "A folder used to organize campaigns.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this campaign folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaignFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update campaign folder",
+ "description": "Update a specific folder used to organize campaigns.",
+ "operationId": "patchCampaignFoldersId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "folder_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign folder."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Folder",
+ "description": "A folder used to organize campaigns.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "id": {
+ "type": "string",
+ "title": "Folder Id",
+ "description": "A string that uniquely identifies this campaign folder.",
+ "readOnly": true
+ },
+ "count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaignFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update",
+ "methodNameCamel": "update"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Campaign Folder",
+ "description": "A folder used to organize campaigns.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "Name to associate with the folder."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete campaign folder",
+ "description": "Delete a specific campaign folder, and mark all the campaigns in the folder as 'unfiled'.",
+ "operationId": "deleteCampaignFoldersId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "folder_id",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign folder."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaignFolders"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "remove",
+ "methodNameCamel": "remove"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns": {
+ "get": {
+ "summary": "List campaigns",
+ "description": "Get all campaigns in an account.",
+ "operationId": "getCampaigns",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "type",
+ "x-title": "Campaign Type",
+ "in": "query",
+ "description": "The campaign type.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ {
+ "name": "status",
+ "x-title": "Status",
+ "in": "query",
+ "description": "The status of the campaign.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent"
+ ]
+ },
+ {
+ "name": "before_send_time",
+ "x-title": "Before Send Time",
+ "in": "query",
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "since_send_time",
+ "x-title": "Since Send Time",
+ "in": "query",
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "before_create_time",
+ "x-title": "Before Create Time",
+ "in": "query",
+ "description": "Restrict the response to campaigns created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "since_create_time",
+ "x-title": "Since Create Time",
+ "in": "query",
+ "description": "Restrict the response to campaigns created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "query",
+ "description": "The unique id for the list.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "folder_id",
+ "x-title": "Folder ID",
+ "in": "query",
+ "description": "The unique folder id.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "member_id",
+ "x-title": "Member ID",
+ "in": "query",
+ "description": "Retrieve campaigns sent to a particular list member. Member ID is The MD5 hash of the lowercase version of the list member\u2019s email address.",
+ "type": "string",
+ "required": false
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "create_time",
+ "send_time"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "x-title": "Include Resend Shortcut Eligibility",
+ "in": "query",
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "description": "An array of campaigns.",
+ "properties": {
+ "campaigns": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together.",
+ "enum": [
+ "template",
+ "html",
+ "url",
+ "multichannel"
+ ]
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/create-and-send-to-a-segment/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": false
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens, clicks, and e-commerce data.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "resend_shortcut_eligibility": {
+ "type": "object",
+ "title": "Resend Shortcut Eligibility",
+ "description": "Determines if the campaign qualifies for the Campaign Resend Shortcuts. Only included when query parameter `include_resend_shortcuts` is `true`.",
+ "properties": {
+ "to_non_openers": {
+ "type": "object",
+ "title": "To Non-Openers",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_new_subscribers": {
+ "type": "object",
+ "title": "To New Subscribers",
+ "description": "Determines if the campaign qualifies to be resent to new subscribers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_clickers": {
+ "type": "object",
+ "title": "To Non-Clickers",
+ "description": "Determines if the campaign qualifies to be resent to non-clickers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_purchasers": {
+ "type": "object",
+ "title": "To Non-Purchasers",
+ "description": "Determines if the campaign qualifies to be resent to non-purchasers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "resend_shortcut_usage": {
+ "type": "object",
+ "title": "Resend Shortcut Usage",
+ "description": "Information about campaigns related through shortcuts.",
+ "properties": {
+ "shortcut_campaigns": {
+ "type": "array",
+ "title": "Shortcut Campaigns",
+ "description": "Campaigns that were created from Campaign Resend Shortcuts for this campaign",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a resent campaign was sent.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "original_campaign": {
+ "type": "object",
+ "title": "Original Campaign",
+ "description": "The original campaign that was resent.",
+ "readOnly": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of the original campaign.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Campaigns",
+ "description": "An array of campaigns."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add campaign",
+ "description": "Create a new Mailchimp campaign.",
+ "operationId": "postCampaigns",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together.",
+ "enum": [
+ "template",
+ "html",
+ "url",
+ "multichannel"
+ ]
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/create-and-send-to-a-segment/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": false
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens, clicks, and e-commerce data.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "resend_shortcut_eligibility": {
+ "type": "object",
+ "title": "Resend Shortcut Eligibility",
+ "description": "Determines if the campaign qualifies for the Campaign Resend Shortcuts. Only included when query parameter `include_resend_shortcuts` is `true`.",
+ "properties": {
+ "to_non_openers": {
+ "type": "object",
+ "title": "To Non-Openers",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_new_subscribers": {
+ "type": "object",
+ "title": "To New Subscribers",
+ "description": "Determines if the campaign qualifies to be resent to new subscribers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_clickers": {
+ "type": "object",
+ "title": "To Non-Clickers",
+ "description": "Determines if the campaign qualifies to be resent to non-clickers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_purchasers": {
+ "type": "object",
+ "title": "To Non-Purchasers",
+ "description": "Determines if the campaign qualifies to be resent to non-purchasers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "resend_shortcut_usage": {
+ "type": "object",
+ "title": "Resend Shortcut Usage",
+ "description": "Information about campaigns related through shortcuts.",
+ "properties": {
+ "shortcut_campaigns": {
+ "type": "array",
+ "title": "Shortcut Campaigns",
+ "description": "Campaigns that were created from Campaign Resend Shortcuts for this campaign",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a resent campaign was sent.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "original_campaign": {
+ "type": "object",
+ "title": "Original Campaign",
+ "description": "The original campaign that was resent.",
+ "readOnly": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of the original campaign.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "required": [
+ "list_id"
+ ],
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "required": [
+ "winner_criteria"
+ ],
+ "properties": {
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign.",
+ "required": [
+ "feed_url",
+ "frequency"
+ ],
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together. The old drag and drop editor uses 'template' while the new editor uses 'multichannel'. Defaults to template.",
+ "example": "template",
+ "enum": [
+ "template",
+ "multichannel"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/campaigns/{campaign_id}": {
+ "get": {
+ "summary": "Get campaign info",
+ "description": "Get information about a specific campaign.",
+ "operationId": "getCampaignsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "x-title": "Include Resend Shortcut Eligibility",
+ "in": "query",
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered.",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "name": "include_resend_shortcut_usage",
+ "x-title": "Include Resend Shortcut Usage",
+ "in": "query",
+ "description": "Return the `resend_shortcut_usage` field in the response. This includes information about campaigns related by a shortcut.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together.",
+ "enum": [
+ "template",
+ "html",
+ "url",
+ "multichannel"
+ ]
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/create-and-send-to-a-segment/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": false
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens, clicks, and e-commerce data.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "resend_shortcut_eligibility": {
+ "type": "object",
+ "title": "Resend Shortcut Eligibility",
+ "description": "Determines if the campaign qualifies for the Campaign Resend Shortcuts. Only included when query parameter `include_resend_shortcuts` is `true`.",
+ "properties": {
+ "to_non_openers": {
+ "type": "object",
+ "title": "To Non-Openers",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_new_subscribers": {
+ "type": "object",
+ "title": "To New Subscribers",
+ "description": "Determines if the campaign qualifies to be resent to new subscribers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_clickers": {
+ "type": "object",
+ "title": "To Non-Clickers",
+ "description": "Determines if the campaign qualifies to be resent to non-clickers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_purchasers": {
+ "type": "object",
+ "title": "To Non-Purchasers",
+ "description": "Determines if the campaign qualifies to be resent to non-purchasers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "resend_shortcut_usage": {
+ "type": "object",
+ "title": "Resend Shortcut Usage",
+ "description": "Information about campaigns related through shortcuts.",
+ "properties": {
+ "shortcut_campaigns": {
+ "type": "array",
+ "title": "Shortcut Campaigns",
+ "description": "Campaigns that were created from Campaign Resend Shortcuts for this campaign",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a resent campaign was sent.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "original_campaign": {
+ "type": "object",
+ "title": "Original Campaign",
+ "description": "The original campaign that was resent.",
+ "readOnly": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of the original campaign.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update campaign settings",
+ "description": "Update some or all of the settings for a specific campaign.",
+ "operationId": "patchCampaignsId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together.",
+ "enum": [
+ "template",
+ "html",
+ "url",
+ "multichannel"
+ ]
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/create-and-send-to-a-segment/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": false
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens, clicks, and e-commerce data.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "resend_shortcut_eligibility": {
+ "type": "object",
+ "title": "Resend Shortcut Eligibility",
+ "description": "Determines if the campaign qualifies for the Campaign Resend Shortcuts. Only included when query parameter `include_resend_shortcuts` is `true`.",
+ "properties": {
+ "to_non_openers": {
+ "type": "object",
+ "title": "To Non-Openers",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_new_subscribers": {
+ "type": "object",
+ "title": "To New Subscribers",
+ "description": "Determines if the campaign qualifies to be resent to new subscribers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_clickers": {
+ "type": "object",
+ "title": "To Non-Clickers",
+ "description": "Determines if the campaign qualifies to be resent to non-clickers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_purchasers": {
+ "type": "object",
+ "title": "To Non-Purchasers",
+ "description": "Determines if the campaign qualifies to be resent to non-purchasers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "resend_shortcut_usage": {
+ "type": "object",
+ "title": "Resend Shortcut Usage",
+ "description": "Information about campaigns related through shortcuts.",
+ "properties": {
+ "shortcut_campaigns": {
+ "type": "array",
+ "title": "Shortcut Campaigns",
+ "description": "Campaigns that were created from Campaign Resend Shortcuts for this campaign",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a resent campaign was sent.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "original_campaign": {
+ "type": "object",
+ "title": "Original Campaign",
+ "description": "The original campaign that was resent.",
+ "readOnly": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of the original campaign.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update",
+ "methodNameCamel": "update"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "required": [
+ "settings"
+ ],
+ "properties": {
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "required": [
+ "list_id"
+ ],
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "required": [
+ "subject_line",
+ "from_name",
+ "reply_to"
+ ],
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "required": [
+ "winner_criteria"
+ ],
+ "properties": {
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "required": [
+ "feed_url",
+ "frequency"
+ ],
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete campaign",
+ "description": "Remove a campaign from your Mailchimp account.",
+ "operationId": "deleteCampaignsId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "remove",
+ "methodNameCamel": "remove"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/actions/cancel-send": {
+ "post": {
+ "summary": "Cancel campaign",
+ "description": "Cancel a Regular or Plain-Text Campaign after you send, before all of your recipients receive it. This feature is included with Mailchimp Pro.",
+ "operationId": "postCampaignsIdActionsCancelSend",
+ "x-pro-required": true,
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "cancel_send",
+ "methodNameCamel": "cancelSend"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/actions/replicate": {
+ "post": {
+ "summary": "Replicate campaign",
+ "description": "Replicate a campaign in saved or send status.",
+ "operationId": "postCampaignsIdActionsReplicate",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent in ISO 8601 format.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together ('template', 'drag_and_drop', 'html', 'url').",
+ "readOnly": true
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "required": [
+ "list_id"
+ ],
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/save-and-manage-segments/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": true
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "required": [
+ "winner_criteria"
+ ],
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "required": [
+ "feed_url",
+ "frequency"
+ ],
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-details/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens and clicks.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "replicate",
+ "methodNameCamel": "replicate"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/actions/send": {
+ "post": {
+ "summary": "Send campaign",
+ "description": "Send a Mailchimp campaign. For RSS Campaigns, the campaign will send according to its schedule. All other campaigns will send immediately.",
+ "operationId": "postCampaignsIdActionsSend",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "send",
+ "methodNameCamel": "send"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/actions/schedule": {
+ "post": {
+ "summary": "Schedule campaign",
+ "description": "Schedule a campaign for delivery. If you're using Multivariate Campaigns to test send times or sending RSS Campaigns, use the send action instead.",
+ "operationId": "postCampaignsIdActionsSchedule",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "schedule",
+ "methodNameCamel": "schedule"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "required": [
+ "schedule_time"
+ ],
+ "properties": {
+ "schedule_time": {
+ "type": "string",
+ "title": "Schedule Time",
+ "format": "date-time",
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45)."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp",
+ "description": "Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/)."
+ },
+ "batch_delivery": {
+ "type": "object",
+ "title": "Batch Delivery",
+ "description": "Choose whether the campaign should use [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/). Cannot be set to `true` for campaigns using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "required": [
+ "batch_delay",
+ "batch_count"
+ ],
+ "properties": {
+ "batch_delay": {
+ "type": "integer",
+ "title": "Batch Delay",
+ "description": "The delay, in minutes, between batches."
+ },
+ "batch_count": {
+ "type": "integer",
+ "title": "Batch Count",
+ "description": "The number of batches for the campaign send."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/campaigns/{campaign_id}/actions/unschedule": {
+ "post": {
+ "summary": "Unschedule campaign",
+ "description": "Unschedule a scheduled campaign that hasn't started sending.",
+ "operationId": "postCampaignsIdActionsUnschedule",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "unschedule",
+ "methodNameCamel": "unschedule"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/actions/test": {
+ "post": {
+ "summary": "Send test email",
+ "description": "Send a test email.",
+ "operationId": "postCampaignsIdActionsTest",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "send_test_email",
+ "methodNameCamel": "sendTestEmail"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "required": [
+ "test_emails",
+ "send_type"
+ ],
+ "properties": {
+ "test_emails": {
+ "type": "array",
+ "title": "Test Emails",
+ "description": "An array of email addresses to send the test email to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_type": {
+ "type": "string",
+ "enum": [
+ "html",
+ "plaintext"
+ ],
+ "title": "Type of email to test",
+ "description": "Choose the type of test email to send."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/campaigns/{campaign_id}/actions/pause": {
+ "post": {
+ "summary": "Pause rss campaign",
+ "description": "Pause an RSS-Driven campaign.",
+ "operationId": "postCampaignsIdActionsPause",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "pause",
+ "methodNameCamel": "pause"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/actions/resume": {
+ "post": {
+ "summary": "Resume rss campaign",
+ "description": "Resume an RSS-Driven campaign.",
+ "operationId": "postCampaignsIdActionsResume",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "resume",
+ "methodNameCamel": "resume"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/actions/create-resend": {
+ "post": {
+ "summary": "Resend campaign",
+ "description": "Remove the guesswork for resending a campaign to certain segments. You can use this endpoint as a shortcut to replicate a campaign and resend it to common segments, such as those who didn't open the campaign, or any new subscribers since it was sent.",
+ "operationId": "postCampaignsIdActionsCreateResend",
+ "x-pro-required": true,
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent in ISO 8601 format.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together ('template', 'drag_and_drop', 'html', 'url').",
+ "readOnly": true
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "required": [
+ "list_id"
+ ],
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/save-and-manage-segments/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": true
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "required": [
+ "winner_criteria"
+ ],
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "required": [
+ "feed_url",
+ "frequency"
+ ],
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-details/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens and clicks.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_resend",
+ "methodNameCamel": "createResend"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": false,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "shortcut_type": {
+ "type": "string",
+ "title": "Resend Shortcut Type",
+ "description": "Which campaign resend shortcut to use. Default is `to_non_openers`.",
+ "enum": [
+ "to_non_openers",
+ "to_new_subscribers",
+ "to_non_clickers",
+ "to_non_purchasers"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/campaigns/{campaign_id}/content": {
+ "get": {
+ "summary": "Get campaign content",
+ "description": "Get the the HTML and plain-text content for a campaign.",
+ "operationId": "getCampaignsIdContent",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Content",
+ "description": "The HTML and plain-text content for a campaign.",
+ "properties": {
+ "variate_contents": {
+ "type": "array",
+ "title": "Variate Contents",
+ "description": "Content options for multivariate campaigns.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "content_label": {
+ "type": "string",
+ "title": "Content Label",
+ "description": "Label used to identify the content option.",
+ "example": "Green header"
+ },
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign.",
+ "example": "*|MC:SUBJECT|*"
+ }
+ }
+ }
+ },
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign."
+ },
+ "archive_html": {
+ "type": "string",
+ "title": "Campaign Archive HTML",
+ "description": "The Archive HTML for the campaign.",
+ "example": "My Subject"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_content",
+ "methodNameCamel": "getContent"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "put": {
+ "summary": "Set campaign content",
+ "description": "Set the content for a campaign.",
+ "operationId": "putCampaignsIdContent",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Content",
+ "description": "The HTML and plain-text content for a campaign.",
+ "properties": {
+ "variate_contents": {
+ "type": "array",
+ "title": "Variate Contents",
+ "description": "Content options for multivariate campaigns.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "content_label": {
+ "type": "string",
+ "title": "Content Label",
+ "description": "Label used to identify the content option.",
+ "example": "Green header"
+ },
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign.",
+ "example": "*|MC:SUBJECT|*"
+ }
+ }
+ }
+ },
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign."
+ },
+ "archive_html": {
+ "type": "string",
+ "title": "Campaign Archive HTML",
+ "description": "The Archive HTML for the campaign.",
+ "example": "My Subject"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "set_content",
+ "methodNameCamel": "setContent"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Campaign Content",
+ "description": "The HTML and plain-text content for a campaign",
+ "properties": {
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "type": "string",
+ "title": "Campaign URL",
+ "description": "When importing a campaign, the URL where the HTML lives."
+ },
+ "template": {
+ "type": "object",
+ "title": "Template Content",
+ "description": "Use this template to generate the HTML content of the campaign",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "type": "object",
+ "title": "Template Sections",
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ }
+ },
+ "archive": {
+ "type": "object",
+ "title": "Upload Archive",
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).",
+ "required": [
+ "archive_content"
+ ],
+ "properties": {
+ "archive_content": {
+ "type": "string",
+ "title": "Archive Content",
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "type": "string",
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "title": "Archive Type",
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ }
+ },
+ "variate_contents": {
+ "type": "array",
+ "title": "Variate Contents",
+ "description": "Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided.",
+ "items": {
+ "type": "object",
+ "required": [
+ "content_label"
+ ],
+ "properties": {
+ "content_label": {
+ "type": "string",
+ "title": "Content Label",
+ "description": "The label used to identify the content option."
+ },
+ "plain_text": {
+ "type": "string",
+ "title": "Plain Text",
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "type": "string",
+ "title": "Campaign HTML",
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "type": "string",
+ "title": "Campaign URL",
+ "description": "When importing a campaign, the URL for the HTML."
+ },
+ "template": {
+ "type": "object",
+ "title": "Template Content",
+ "description": "Use this template to generate the HTML content for the campaign.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "type": "object",
+ "title": "Template Sections",
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ }
+ },
+ "archive": {
+ "type": "object",
+ "title": "Upload Archive",
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).",
+ "required": [
+ "archive_content"
+ ],
+ "properties": {
+ "archive_content": {
+ "type": "string",
+ "title": "Archive Content",
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "type": "string",
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "title": "Archive Type",
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/campaigns/{campaign_id}/feedback": {
+ "get": {
+ "summary": "List campaign feedback",
+ "description": "Get team feedback while you're working together on a Mailchimp campaign.",
+ "operationId": "getCampaignsIdFeedback",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Reports",
+ "description": "A summary of the comment feedback for a specific campaign.",
+ "properties": {
+ "feedback": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Campaign Feedback",
+ "description": "A specific feedback message from a specific campaign.",
+ "required": [
+ "message"
+ ],
+ "properties": {
+ "feedback_id": {
+ "type": "integer",
+ "title": "Feedback ID",
+ "description": "The individual id for the feedback item.",
+ "readOnly": true
+ },
+ "parent_id": {
+ "type": "integer",
+ "title": "Parent ID",
+ "description": "If a reply, the id of the parent feedback item.",
+ "readOnly": true
+ },
+ "block_id": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "is_complete": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name of the user who created the feedback.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The date and time the feedback item was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "description": "The date and time the feedback was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "source": {
+ "type": "string",
+ "title": "Source",
+ "description": "The source of the feedback.",
+ "enum": [
+ "api",
+ "email",
+ "sms",
+ "web",
+ "ios",
+ "android"
+ ],
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Campaign Feedback",
+ "description": "A collection of feedback items for a campaign."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_feedback",
+ "methodNameCamel": "getFeedback"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add campaign feedback",
+ "description": "Add feedback on a specific campaign.",
+ "operationId": "postCampaignsIdFeedback",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Feedback",
+ "description": "A specific feedback message from a specific campaign.",
+ "properties": {
+ "feedback_id": {
+ "type": "integer",
+ "title": "Feedback ID",
+ "description": "The individual id for the feedback item.",
+ "readOnly": true
+ },
+ "parent_id": {
+ "type": "integer",
+ "title": "Parent ID",
+ "description": "If a reply, the id of the parent feedback item.",
+ "readOnly": true
+ },
+ "block_id": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "is_complete": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name of the user who created the feedback.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The date and time the feedback item was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "description": "The date and time the feedback was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "source": {
+ "type": "string",
+ "title": "Source",
+ "description": "The source of the feedback.",
+ "enum": [
+ "api",
+ "email",
+ "sms",
+ "web",
+ "ios",
+ "android"
+ ],
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_feedback",
+ "methodNameCamel": "addFeedback"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Campaign Feedback",
+ "description": "A specific feedback message from a specific campaign.",
+ "required": [
+ "message"
+ ],
+ "properties": {
+ "block_id": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "is_complete": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/campaigns/{campaign_id}/feedback/{feedback_id}": {
+ "get": {
+ "summary": "Get campaign feedback message",
+ "description": "Get a specific feedback message from a campaign.",
+ "operationId": "getCampaignsIdFeedbackId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "in": "path",
+ "name": "feedback_id",
+ "x-title": "Feedback ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the feedback message."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Feedback",
+ "description": "A specific feedback message from a specific campaign.",
+ "properties": {
+ "feedback_id": {
+ "type": "integer",
+ "title": "Feedback ID",
+ "description": "The individual id for the feedback item.",
+ "readOnly": true
+ },
+ "parent_id": {
+ "type": "integer",
+ "title": "Parent ID",
+ "description": "If a reply, the id of the parent feedback item.",
+ "readOnly": true
+ },
+ "block_id": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "is_complete": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name of the user who created the feedback.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The date and time the feedback item was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "description": "The date and time the feedback was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "source": {
+ "type": "string",
+ "title": "Source",
+ "description": "The source of the feedback.",
+ "enum": [
+ "api",
+ "email",
+ "sms",
+ "web",
+ "ios",
+ "android"
+ ],
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_feedback_message",
+ "methodNameCamel": "getFeedbackMessage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update campaign feedback message",
+ "description": "Update a specific feedback message for a campaign.",
+ "operationId": "patchCampaignsIdFeedbackId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "in": "path",
+ "name": "feedback_id",
+ "x-title": "Feedback ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the feedback message."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Feedback",
+ "description": "A specific feedback message from a specific campaign.",
+ "properties": {
+ "feedback_id": {
+ "type": "integer",
+ "title": "Feedback ID",
+ "description": "The individual id for the feedback item.",
+ "readOnly": true
+ },
+ "parent_id": {
+ "type": "integer",
+ "title": "Parent ID",
+ "description": "If a reply, the id of the parent feedback item.",
+ "readOnly": true
+ },
+ "block_id": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "is_complete": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name of the user who created the feedback.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The date and time the feedback item was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "description": "The date and time the feedback was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "source": {
+ "type": "string",
+ "title": "Source",
+ "description": "The source of the feedback.",
+ "enum": [
+ "api",
+ "email",
+ "sms",
+ "web",
+ "ios",
+ "android"
+ ],
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_feedback_message",
+ "methodNameCamel": "updateFeedbackMessage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Campaign Feedback",
+ "description": "A specific feedback message from a specific campaign.",
+ "properties": {
+ "block_id": {
+ "type": "integer",
+ "title": "Block ID",
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The content of the feedback."
+ },
+ "is_complete": {
+ "type": "boolean",
+ "title": "Complete",
+ "description": "The status of feedback."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete campaign feedback message",
+ "description": "Remove a specific feedback message for a campaign.",
+ "operationId": "deleteCampaignsIdFeedbackId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "in": "path",
+ "name": "feedback_id",
+ "x-title": "Feedback ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the feedback message."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_feedback_message",
+ "methodNameCamel": "deleteFeedbackMessage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/campaigns/{campaign_id}/send-checklist": {
+ "get": {
+ "summary": "Get campaign send checklist",
+ "description": "Review the send checklist for a campaign, and resolve any issues before sending.",
+ "operationId": "getCampaignsIdSendChecklist",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Send Checklist",
+ "description": "The send checklist for the campaign.",
+ "properties": {
+ "is_ready": {
+ "type": "boolean",
+ "title": "Ready?",
+ "description": "Whether the campaign is ready to send."
+ },
+ "items": {
+ "type": "array",
+ "title": "Items",
+ "description": "A list of feedback items to review before sending your campaign.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The item type.",
+ "enum": [
+ "success",
+ "warning",
+ "error"
+ ]
+ },
+ "id": {
+ "type": "integer",
+ "title": "ID",
+ "description": "The ID for the specific item."
+ },
+ "heading": {
+ "type": "string",
+ "title": "Heading",
+ "description": "The heading for the specific item."
+ },
+ "details": {
+ "type": "string",
+ "title": "Details",
+ "description": "Details about the specific feedback item."
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "campaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_send_checklist",
+ "methodNameCamel": "getSendChecklist"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/connected-sites": {
+ "get": {
+ "summary": "List connected sites",
+ "description": "Get all connected sites in an account.",
+ "operationId": "getConnectedSites",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Connected Sites",
+ "description": "A collection of connected sites in the account.",
+ "properties": {
+ "sites": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "Information about a specific connected site.",
+ "properties": {
+ "foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the site.",
+ "readOnly": true,
+ "example": "a180c384d7db88b if created in-app, MC001 if created via API"
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The unique identifier for the ecommerce store that's associated with the connected site (if any). The store_id for a specific connected site can't change.",
+ "readOnly": true,
+ "example": "MC001"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Connected Site Platform",
+ "description": "The platform of the connected site.",
+ "readOnly": true,
+ "example": "shopify, magento, bigcommerce, woocommerce"
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The connected site domain.",
+ "readOnly": true,
+ "example": "example.myshopify.com"
+ },
+ "site_script": {
+ "type": "object",
+ "title": "Script",
+ "description": "The script used to connect your site with Mailchimp.",
+ "readOnly": true,
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "Script URL",
+ "description": "The URL used for any integrations that offer built-in support for connected sites.",
+ "example": "https://chimpstatic.com/mcjs-connected/js/users/{user-hash}/{site-hash}.js"
+ },
+ "fragment": {
+ "type": "string",
+ "title": "Script Fragment",
+ "description": "A pre-built script that you can copy-and-paste into your site to integrate it with Mailchimp.",
+ "example": ""
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the connected site was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the connected site was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:35:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Connected Sites",
+ "description": "An array of objects, each representing a connected site."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "connectedSites"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add connected site",
+ "description": "Create a new Mailchimp connected site.",
+ "operationId": "postConnectedSites",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "Information about a specific connected site.",
+ "properties": {
+ "foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the site.",
+ "readOnly": true,
+ "example": "a180c384d7db88b if created in-app, MC001 if created via API"
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The unique identifier for the ecommerce store that's associated with the connected site (if any). The store_id for a specific connected site can't change.",
+ "readOnly": true,
+ "example": "MC001"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Connected Site Platform",
+ "description": "The platform of the connected site.",
+ "readOnly": true,
+ "example": "shopify, magento, bigcommerce, woocommerce"
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The connected site domain.",
+ "readOnly": true,
+ "example": "example.myshopify.com"
+ },
+ "site_script": {
+ "type": "object",
+ "title": "Script",
+ "description": "The script used to connect your site with Mailchimp.",
+ "readOnly": true,
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "Script URL",
+ "description": "The URL used for any integrations that offer built-in support for connected sites.",
+ "example": "https://chimpstatic.com/mcjs-connected/js/users/{user-hash}/{site-hash}.js"
+ },
+ "fragment": {
+ "type": "string",
+ "title": "Script Fragment",
+ "description": "A pre-built script that you can copy-and-paste into your site to integrate it with Mailchimp.",
+ "example": ""
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the connected site was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the connected site was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:35:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "connectedSites"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "Information about a specific connected site.",
+ "required": [
+ "foreign_id",
+ "domain"
+ ],
+ "properties": {
+ "foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the site.",
+ "example": "MC001"
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The connected site domain.",
+ "example": "example.com"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/connected-sites/{connected_site_id}": {
+ "get": {
+ "summary": "Get connected site",
+ "description": "Get information about a specific connected site.",
+ "operationId": "getConnectedSitesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "connected_site_id",
+ "x-title": "Connected Site Foreign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique identifier for the site."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "Information about a specific connected site.",
+ "properties": {
+ "foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the site.",
+ "readOnly": true,
+ "example": "a180c384d7db88b if created in-app, MC001 if created via API"
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The unique identifier for the ecommerce store that's associated with the connected site (if any). The store_id for a specific connected site can't change.",
+ "readOnly": true,
+ "example": "MC001"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Connected Site Platform",
+ "description": "The platform of the connected site.",
+ "readOnly": true,
+ "example": "shopify, magento, bigcommerce, woocommerce"
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The connected site domain.",
+ "readOnly": true,
+ "example": "example.myshopify.com"
+ },
+ "site_script": {
+ "type": "object",
+ "title": "Script",
+ "description": "The script used to connect your site with Mailchimp.",
+ "readOnly": true,
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "Script URL",
+ "description": "The URL used for any integrations that offer built-in support for connected sites.",
+ "example": "https://chimpstatic.com/mcjs-connected/js/users/{user-hash}/{site-hash}.js"
+ },
+ "fragment": {
+ "type": "string",
+ "title": "Script Fragment",
+ "description": "A pre-built script that you can copy-and-paste into your site to integrate it with Mailchimp.",
+ "example": ""
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the connected site was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the connected site was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:35:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "connectedSites"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "delete": {
+ "summary": "Delete connected site",
+ "description": "Remove a connected site from your Mailchimp account.",
+ "operationId": "deleteConnectedSitesId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "connected_site_id",
+ "x-title": "Connected Site Foreign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique identifier for the site."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "connectedSites"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "remove",
+ "methodNameCamel": "remove"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/connected-sites/{connected_site_id}/actions/verify-script-installation": {
+ "post": {
+ "summary": "Verify connected site script",
+ "description": "Verify that the connected sites script has been installed, either via the script URL or fragment.",
+ "operationId": "postConnectedSitesIdActionsVerifyScriptInstallation",
+ "x-pro-required": true,
+ "parameters": [
+ {
+ "in": "path",
+ "name": "connected_site_id",
+ "x-title": "Connected Site Foreign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique identifier for the site."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "connectedSites"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "verify_script_installation",
+ "methodNameCamel": "verifyScriptInstallation"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/conversations": {
+ "get": {
+ "summary": "List conversations",
+ "description": "Get a list of conversations for the account. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "operationId": "getConversations",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "has_unread_messages",
+ "x-title": "Has Unread Messages",
+ "in": "query",
+ "description": "Whether the conversation has any unread messages.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "true",
+ "false"
+ ]
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "query",
+ "description": "The unique id for the list.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "in": "query",
+ "description": "The unique id for the campaign.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Tracked Conversations",
+ "description": "A collection of this account's tracked conversations.",
+ "properties": {
+ "conversations": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Conversation",
+ "description": "Details about an individual conversation. Conversation tracking is a feature available to paid accounts that lets you view replies to your campaigns in your Mailchimp account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "A string that uniquely identifies this conversation.",
+ "readOnly": true
+ },
+ "message_count": {
+ "type": "integer",
+ "title": "Message Count",
+ "description": "The total number of messages in this conversation.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique identifier of the campaign for this conversation.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier of the list for this conversation.",
+ "readOnly": true
+ },
+ "unread_messages": {
+ "type": "integer",
+ "title": "Unread Messages",
+ "description": "The number of unread messages in this conversation.",
+ "readOnly": true
+ },
+ "from_label": {
+ "type": "string",
+ "title": "From Label",
+ "description": "A label representing the sender of this message.",
+ "readOnly": true
+ },
+ "from_email": {
+ "type": "string",
+ "title": "From Email",
+ "description": "A label representing the email of the sender of this message.",
+ "readOnly": true
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The subject of the message.",
+ "readOnly": true
+ },
+ "last_message": {
+ "type": "object",
+ "title": "Last Message",
+ "description": "The most recent message in the conversation.",
+ "properties": {
+ "from_label": {
+ "type": "string",
+ "title": "From Label",
+ "description": "A label representing the sender of this message.",
+ "readOnly": true
+ },
+ "from_email": {
+ "type": "string",
+ "title": "From Email",
+ "description": "A label representing the email of the sender of this message.",
+ "readOnly": true
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The subject of this message.",
+ "readOnly": true
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The plain-text content of the message.",
+ "readOnly": true
+ },
+ "read": {
+ "type": "boolean",
+ "title": "Read",
+ "description": "Whether this message has been marked as read."
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time the message was either sent or received in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Conversations",
+ "description": "A list of conversations."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": true,
+ "tags": [
+ "conversations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/conversations/{conversation_id}": {
+ "get": {
+ "summary": "Get conversation",
+ "description": "Get details about an individual conversation. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "operationId": "getConversationsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "conversation_id",
+ "x-title": "Conversation ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the conversation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Conversation",
+ "description": "Details about an individual conversation. Conversation tracking is a feature available to paid accounts that lets you view replies to your campaigns in your Mailchimp account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "A string that uniquely identifies this conversation.",
+ "readOnly": true
+ },
+ "message_count": {
+ "type": "integer",
+ "title": "Message Count",
+ "description": "The total number of messages in this conversation.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique identifier of the campaign for this conversation.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier of the list for this conversation.",
+ "readOnly": true
+ },
+ "unread_messages": {
+ "type": "integer",
+ "title": "Unread Messages",
+ "description": "The number of unread messages in this conversation.",
+ "readOnly": true
+ },
+ "from_label": {
+ "type": "string",
+ "title": "From Label",
+ "description": "A label representing the sender of this message.",
+ "readOnly": true
+ },
+ "from_email": {
+ "type": "string",
+ "title": "From Email",
+ "description": "A label representing the email of the sender of this message.",
+ "readOnly": true
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The subject of the message.",
+ "readOnly": true
+ },
+ "last_message": {
+ "type": "object",
+ "title": "Last Message",
+ "description": "The most recent message in the conversation.",
+ "properties": {
+ "from_label": {
+ "type": "string",
+ "title": "From Label",
+ "description": "A label representing the sender of this message.",
+ "readOnly": true
+ },
+ "from_email": {
+ "type": "string",
+ "title": "From Email",
+ "description": "A label representing the email of the sender of this message.",
+ "readOnly": true
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The subject of this message.",
+ "readOnly": true
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The plain-text content of the message.",
+ "readOnly": true
+ },
+ "read": {
+ "type": "boolean",
+ "title": "Read",
+ "description": "Whether this message has been marked as read."
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time the message was either sent or received in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": true,
+ "tags": [
+ "conversations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/conversations/{conversation_id}/messages": {
+ "get": {
+ "summary": "List messages",
+ "description": "Get messages from a specific conversation. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "operationId": "getConversationsIdMessages",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "conversation_id",
+ "x-title": "Conversation ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the conversation."
+ },
+ {
+ "name": "is_read",
+ "x-title": "Is Read",
+ "in": "query",
+ "description": "Whether a conversation message has been marked as read.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "true",
+ "false"
+ ]
+ },
+ {
+ "name": "before_timestamp",
+ "x-title": "Before Timestamp",
+ "in": "query",
+ "description": "Restrict the response to messages created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "since_timestamp",
+ "x-title": "Since Timestamp",
+ "in": "query",
+ "description": "Restrict the response to messages created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Collection of Conversation Messages",
+ "description": "Messages from a specific conversation.",
+ "properties": {
+ "conversation_messages": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Conversation Message",
+ "description": "An individual message in a conversation. Conversation tracking is a feature available to paid accounts that lets you view replies to your campaigns in your Mailchimp account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "A string that uniquely identifies this message",
+ "readOnly": true
+ },
+ "conversation_id": {
+ "type": "string",
+ "title": "Conversation ID",
+ "description": "A string that identifies this message's conversation",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "integer",
+ "title": "List ID",
+ "description": "The list's web ID",
+ "readOnly": true
+ },
+ "from_label": {
+ "type": "string",
+ "title": "From Label",
+ "description": "A label representing the sender of this message",
+ "readOnly": true
+ },
+ "from_email": {
+ "type": "string",
+ "title": "From Email",
+ "description": "A label representing the email of the sender of this message"
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The subject of this message"
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The plain-text content of the message"
+ },
+ "read": {
+ "type": "boolean",
+ "title": "Read",
+ "description": "Whether this message has been marked as read"
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time the message was either sent or received in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Conversation Messages",
+ "description": "An array of objects, each representing a conversation messages resources."
+ },
+ "conversation_id": {
+ "type": "string",
+ "title": "Conversation ID",
+ "description": "A string that identifies this conversation."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": true,
+ "tags": [
+ "conversations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_conversation_messages",
+ "methodNameCamel": "getConversationMessages"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/conversations/{conversation_id}/messages/{message_id}": {
+ "get": {
+ "summary": "Get message",
+ "description": "Get an individual message in a conversation. Conversations has been deprecated in favor of Inbox and these endpoints don't include Inbox data. Past Conversations are still available via this endpoint, but new campaign replies and other Inbox messages aren\u2019t available using this endpoint.",
+ "operationId": "getConversationsIdMessagesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "conversation_id",
+ "x-title": "Conversation ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the conversation."
+ },
+ {
+ "in": "path",
+ "name": "message_id",
+ "x-title": "Message ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the conversation message."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Conversation Message",
+ "description": "An individual message in a conversation. Conversation tracking is a feature available to paid accounts that lets you view replies to your campaigns in your Mailchimp account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "A string that uniquely identifies this message",
+ "readOnly": true
+ },
+ "conversation_id": {
+ "type": "string",
+ "title": "Conversation ID",
+ "description": "A string that identifies this message's conversation",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "integer",
+ "title": "List ID",
+ "description": "The list's web ID",
+ "readOnly": true
+ },
+ "from_label": {
+ "type": "string",
+ "title": "From Label",
+ "description": "A label representing the sender of this message",
+ "readOnly": true
+ },
+ "from_email": {
+ "type": "string",
+ "title": "From Email",
+ "description": "A label representing the email of the sender of this message"
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The subject of this message"
+ },
+ "message": {
+ "type": "string",
+ "title": "Message",
+ "description": "The plain-text content of the message"
+ },
+ "read": {
+ "type": "boolean",
+ "title": "Read",
+ "description": "Whether this message has been marked as read"
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time the message was either sent or received in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": true,
+ "tags": [
+ "conversations"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_conversation_message",
+ "methodNameCamel": "getConversationMessage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/customer-journeys/journeys/{journey_id}/steps/{step_id}/actions/trigger": {
+ "post": {
+ "summary": "Customer Journeys API trigger for a contact",
+ "description": "A step trigger in an Automation flow. To use it, create a starting point or step from the Automation flow builder in the app using the Customer Journey API condition. We\u2019ll provide a url during the process that includes the {journey_id} and {step_id}. You\u2019ll then be able to use this endpoint to trigger the condition for the posted contact.",
+ "operationId": "postCustomerJourneysJourneysIdStepsIdActionsTrigger",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "journey_id",
+ "x-title": "Flow ID",
+ "type": "integer",
+ "required": true,
+ "description": "The id for the flow."
+ },
+ {
+ "in": "path",
+ "name": "step_id",
+ "x-title": "Step ID",
+ "type": "integer",
+ "required": true,
+ "description": "The id for the Step."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "An empty response",
+ "schema": {
+ "description": "Empty Response"
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "customerJourneys"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "trigger",
+ "methodNameCamel": "trigger"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Subscriber in Automation flow's audience",
+ "description": "Information about subscribers in a Automation flows's audience.",
+ "required": [
+ "email_address"
+ ],
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The list member's email address."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/file-manager/files": {
+ "get": {
+ "summary": "List stored files",
+ "description": "Get a list of available images and files stored in the File Manager for the account.",
+ "operationId": "getFileManagerFiles",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "type",
+ "x-title": "File Type",
+ "in": "query",
+ "description": "The file type for the File Manager file.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "created_by",
+ "x-title": "Created By",
+ "in": "query",
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_created_at",
+ "x-title": "Before Created At",
+ "in": "query",
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "since_created_at",
+ "x-title": "Since Created At",
+ "in": "query",
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "added_date",
+ "name",
+ "size"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "File Manager",
+ "description": "A list of available images and files stored in the File Manager for the account.",
+ "properties": {
+ "files": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Gallery File",
+ "description": "An individual file listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "File ID",
+ "description": "The unique id of the file.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder."
+ },
+ "type": {
+ "enum": [
+ "image",
+ "file"
+ ],
+ "type": "string",
+ "title": "File Type",
+ "description": "The type of file in the File Manager.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "full_size_url": {
+ "type": "string",
+ "title": "File URL",
+ "description": "The url of the full-size file.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "thumbnail_url": {
+ "type": "string",
+ "title": "Thumbnail URL",
+ "description": "The url of the thumbnail preview.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "size": {
+ "type": "integer",
+ "title": "File Size",
+ "description": "The size of the file in bytes.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that uploaded the file.",
+ "readOnly": true
+ },
+ "width": {
+ "type": "integer",
+ "title": "Image Width",
+ "description": "The width of the image.",
+ "readOnly": true
+ },
+ "height": {
+ "type": "integer",
+ "title": "Image Height",
+ "description": "The height of an image.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Files",
+ "description": " A list of files and images in an account."
+ },
+ "total_file_size": {
+ "type": "number",
+ "title": "Total File Size",
+ "description": "The total size of all File Manager files in bytes.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "files",
+ "methodNameCamel": "files"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add file",
+ "description": "Upload a new image or file to the File Manager.",
+ "operationId": "postFileManagerFiles",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Gallery File",
+ "description": "An individual file listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "File ID",
+ "description": "The unique id of the file.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder."
+ },
+ "type": {
+ "enum": [
+ "image",
+ "file"
+ ],
+ "type": "string",
+ "title": "File Type",
+ "description": "The type of file in the File Manager.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "full_size_url": {
+ "type": "string",
+ "title": "File URL",
+ "description": "The url of the full-size file.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "thumbnail_url": {
+ "type": "string",
+ "title": "Thumbnail URL",
+ "description": "The url of the thumbnail preview.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "size": {
+ "type": "integer",
+ "title": "File Size",
+ "description": "The size of the file in bytes.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that uploaded the file.",
+ "readOnly": true
+ },
+ "width": {
+ "type": "integer",
+ "title": "Image Width",
+ "description": "The width of the image.",
+ "readOnly": true
+ },
+ "height": {
+ "type": "integer",
+ "title": "Image Height",
+ "description": "The height of an image.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "upload",
+ "methodNameCamel": "upload"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Gallery File",
+ "description": "An individual file listed in the File Manager.",
+ "required": [
+ "name",
+ "file_data"
+ ],
+ "properties": {
+ "folder_id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder."
+ },
+ "name": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "file_data": {
+ "type": "string",
+ "title": "File Data",
+ "description": "The base64-encoded contents of the file."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/file-manager/files/{file_id}": {
+ "get": {
+ "summary": "Get file",
+ "description": "Get information about a specific file in the File Manager.",
+ "operationId": "getFileManagerFilesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "file_id",
+ "x-title": "File ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the File Manager file."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Gallery File",
+ "description": "An individual file listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "File ID",
+ "description": "The unique id of the file.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder."
+ },
+ "type": {
+ "enum": [
+ "image",
+ "file"
+ ],
+ "type": "string",
+ "title": "File Type",
+ "description": "The type of file in the File Manager.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "full_size_url": {
+ "type": "string",
+ "title": "File URL",
+ "description": "The url of the full-size file.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "thumbnail_url": {
+ "type": "string",
+ "title": "Thumbnail URL",
+ "description": "The url of the thumbnail preview.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "size": {
+ "type": "integer",
+ "title": "File Size",
+ "description": "The size of the file in bytes.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that uploaded the file.",
+ "readOnly": true
+ },
+ "width": {
+ "type": "integer",
+ "title": "Image Width",
+ "description": "The width of the image.",
+ "readOnly": true
+ },
+ "height": {
+ "type": "integer",
+ "title": "Image Height",
+ "description": "The height of an image.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_file",
+ "methodNameCamel": "getFile"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update file",
+ "description": "Update a file in the File Manager.",
+ "operationId": "patchFileManagerFilesId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "file_id",
+ "x-title": "File ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the File Manager file."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Gallery File",
+ "description": "An individual file listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "File ID",
+ "description": "The unique id of the file.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder."
+ },
+ "type": {
+ "enum": [
+ "image",
+ "file"
+ ],
+ "type": "string",
+ "title": "File Type",
+ "description": "The type of file in the File Manager.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "full_size_url": {
+ "type": "string",
+ "title": "File URL",
+ "description": "The url of the full-size file.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "thumbnail_url": {
+ "type": "string",
+ "title": "Thumbnail URL",
+ "description": "The url of the thumbnail preview.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "size": {
+ "type": "integer",
+ "title": "File Size",
+ "description": "The size of the file in bytes.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that uploaded the file.",
+ "readOnly": true
+ },
+ "width": {
+ "type": "integer",
+ "title": "Image Width",
+ "description": "The width of the image.",
+ "readOnly": true
+ },
+ "height": {
+ "type": "integer",
+ "title": "Image Height",
+ "description": "The height of an image.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_file",
+ "methodNameCamel": "updateFile"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Gallery File",
+ "description": "An individual file listed in the File Manager.",
+ "properties": {
+ "folder_id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder."
+ },
+ "name": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete file",
+ "description": "Remove a specific file from the File Manager.",
+ "operationId": "deleteFileManagerFilesId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "file_id",
+ "x-title": "File ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the File Manager file."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_file",
+ "methodNameCamel": "deleteFile"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/file-manager/folders": {
+ "get": {
+ "summary": "List folders",
+ "description": "Get a list of all folders in the File Manager.",
+ "operationId": "getFileManagerFolders",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "created_by",
+ "x-title": "Created By",
+ "in": "query",
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_created_at",
+ "x-title": "Before Created At",
+ "in": "query",
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "since_created_at",
+ "x-title": "Since Created At",
+ "in": "query",
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "File Manager Folders",
+ "description": "A list of all folders in the File Manager.",
+ "properties": {
+ "folders": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Gallery Folder",
+ "description": "An individual folder listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The unique id for the folder.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "file_count": {
+ "type": "integer",
+ "title": "File Count",
+ "description": "The number of files in the folder.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "format": "date-time",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that created the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "File Manager Folders",
+ "description": "A list of all folders in the File Manager."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_folders",
+ "methodNameCamel": "listFolders"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add folder",
+ "description": "Create a new folder in the File Manager.",
+ "operationId": "postFileManagerFolders",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Gallery Folder",
+ "description": "An individual folder listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The unique id for the folder.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "file_count": {
+ "type": "integer",
+ "title": "File Count",
+ "description": "The number of files in the folder.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "format": "date-time",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that created the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_folder",
+ "methodNameCamel": "createFolder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Gallery Folder",
+ "description": "An individual folder listed in the File Manager.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/file-manager/folders/{folder_id}": {
+ "get": {
+ "summary": "Get folder",
+ "description": "Get information about a specific folder in the File Manager.",
+ "operationId": "getFileManagerFoldersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "folder_id",
+ "x-title": "Folder ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the File Manager folder."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Gallery Folder",
+ "description": "An individual folder listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The unique id for the folder.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "file_count": {
+ "type": "integer",
+ "title": "File Count",
+ "description": "The number of files in the folder.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "format": "date-time",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that created the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_folder",
+ "methodNameCamel": "getFolder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update folder",
+ "description": "Update a specific File Manager folder.",
+ "operationId": "patchFileManagerFoldersId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "folder_id",
+ "x-title": "Folder ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the File Manager folder."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Gallery Folder",
+ "description": "An individual folder listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The unique id for the folder.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ },
+ "file_count": {
+ "type": "integer",
+ "title": "File Count",
+ "description": "The number of files in the folder.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "format": "date-time",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that created the folder.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_folder",
+ "methodNameCamel": "updateFolder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Gallery Folder",
+ "description": "An individual folder listed in the File Manager.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Folder Name",
+ "description": "The name of the folder."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete folder",
+ "description": "Delete a specific folder in the File Manager.",
+ "operationId": "deleteFileManagerFoldersId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "folder_id",
+ "x-title": "Folder ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the File Manager folder."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_folder",
+ "methodNameCamel": "deleteFolder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/file-manager/folders/{folder_id}/files": {
+ "get": {
+ "summary": "List stored files",
+ "description": "Get a list of available images and files stored in this folder.",
+ "operationId": "getFileManagerFoldersFiles",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "folder_id",
+ "x-title": "Folder ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the File Manager folder."
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "type",
+ "x-title": "File Type",
+ "in": "query",
+ "description": "The file type for the File Manager file.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "created_by",
+ "x-title": "Created By",
+ "in": "query",
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_created_at",
+ "x-title": "Before Created At",
+ "in": "query",
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "since_created_at",
+ "x-title": "Since Created At",
+ "in": "query",
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "added_date",
+ "name",
+ "size"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "File Manager",
+ "description": "A list of available images and files stored in the File Manager for the account.",
+ "properties": {
+ "files": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Gallery File",
+ "description": "An individual file listed in the File Manager.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "File ID",
+ "description": "The unique id of the file.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "integer",
+ "title": "Folder ID",
+ "description": "The id of the folder."
+ },
+ "type": {
+ "enum": [
+ "image",
+ "file"
+ ],
+ "type": "string",
+ "title": "File Type",
+ "description": "The type of file in the File Manager.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "File Name",
+ "description": "The name of the file."
+ },
+ "full_size_url": {
+ "type": "string",
+ "title": "File URL",
+ "description": "The url of the full-size file.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "thumbnail_url": {
+ "type": "string",
+ "title": "Thumbnail URL",
+ "description": "The url of the thumbnail preview.",
+ "format": "uri",
+ "readOnly": true
+ },
+ "size": {
+ "type": "integer",
+ "title": "File Size",
+ "description": "The size of the file in bytes.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Date",
+ "description": "The date and time a file was added to the File Manager in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the profile that uploaded the file.",
+ "readOnly": true
+ },
+ "width": {
+ "type": "integer",
+ "title": "Image Width",
+ "description": "The width of the image.",
+ "readOnly": true
+ },
+ "height": {
+ "type": "integer",
+ "title": "Image Height",
+ "description": "The height of an image.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Files",
+ "description": " A list of files and images in an account."
+ },
+ "total_file_size": {
+ "type": "number",
+ "title": "Total File Size",
+ "description": "The total size of all File Manager files in bytes.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "fileManager"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "folders_files",
+ "methodNameCamel": "foldersFiles"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists": {
+ "get": {
+ "summary": "Get lists info",
+ "description": "Get information about all lists in the account.",
+ "operationId": "getLists",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "before_date_created",
+ "x-title": "Before Date Created",
+ "in": "query",
+ "required": false,
+ "description": "Restrict response to lists created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string"
+ },
+ {
+ "name": "since_date_created",
+ "x-title": "Since Date Created",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to lists created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string"
+ },
+ {
+ "name": "before_campaign_last_sent",
+ "x-title": "Before Campaign Last Sent",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to lists created before the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string"
+ },
+ {
+ "name": "since_campaign_last_sent",
+ "x-title": "Since Campaign Last Sent",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to lists created after the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string"
+ },
+ {
+ "name": "email",
+ "x-title": "Subscriber Email",
+ "description": "Restrict results to lists that include a specific subscriber's email address.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "date_created"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ },
+ {
+ "name": "has_ecommerce_store",
+ "x-title": "Has Ecommerce Store",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to lists that contain an active, connected, undeleted ecommerce store.",
+ "type": "boolean"
+ },
+ {
+ "name": "include_total_contacts",
+ "x-title": "Include Total Contacts",
+ "in": "query",
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber Lists",
+ "description": "A collection of subscriber lists for this account. Lists contain subscribers who have opted-in to receive correspondence from you or your organization.",
+ "properties": {
+ "lists": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies this list.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "List Web ID",
+ "description": "The ID used in the Mailchimp web application. View this list in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/?id={web_id}`.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ }
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.",
+ "default": false
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ }
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Creation Date",
+ "description": "The date and time that this list was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "list_rating": {
+ "type": "integer",
+ "title": "List Rating",
+ "description": "An auto-generated activity score for the list (0-5).",
+ "readOnly": true
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "subscribe_url_short": {
+ "type": "string",
+ "title": "Subscribe URL Short",
+ "description": "Our [url shortened](https://mailchimp.com/help/share-your-signup-form/) version of this list's subscribe form.",
+ "readOnly": true
+ },
+ "subscribe_url_long": {
+ "type": "string",
+ "title": "Subscribe URL Long",
+ "description": "The full version of this list's subscribe form (host will vary).",
+ "readOnly": true
+ },
+ "beamer_address": {
+ "type": "string",
+ "title": "Beamer Address",
+ "description": "The list's [Email Beamer](https://mailchimp.com/help/use-email-beamer-to-create-a-campaign/) address.",
+ "readOnly": true
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "enum": [
+ "pub",
+ "prv"
+ ],
+ "description": "Legacy - visibility settings are no longer used"
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email.",
+ "default": false
+ },
+ "has_welcome": {
+ "type": "boolean",
+ "title": "Has Welcome",
+ "description": "Whether or not this list has a welcome automation connected. Welcome Automations: welcomeSeries, singleWelcome, emailFollowup.",
+ "default": false,
+ "example": false
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.",
+ "default": false
+ },
+ "modules": {
+ "type": "array",
+ "title": "Modules",
+ "description": "Any list-specific modules installed for this list.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "stats": {
+ "type": "object",
+ "title": "Statistics",
+ "description": "Stats for the list. Many of these are cached for at least five minutes.",
+ "readOnly": true,
+ "properties": {
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active members in the list.",
+ "readOnly": true
+ },
+ "total_contacts": {
+ "type": "integer",
+ "title": "Total Contacts",
+ "description": "The number of contacts in the list, including subscribed, unsubscribed, pending, cleaned, deleted, transactional, and those that need to be reconfirmed. Requires include_total_contacts query parameter to be included.",
+ "readOnly": true
+ },
+ "unsubscribe_count": {
+ "type": "integer",
+ "title": "Unsubscribe Count",
+ "description": "The number of members who have unsubscribed from the list.",
+ "readOnly": true
+ },
+ "cleaned_count": {
+ "type": "integer",
+ "title": "Cleaned Count",
+ "description": "The number of members cleaned from the list.",
+ "readOnly": true
+ },
+ "member_count_since_send": {
+ "type": "integer",
+ "title": "Member Count Since Send",
+ "description": "The number of active members in the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "unsubscribe_count_since_send": {
+ "type": "integer",
+ "title": "Unsubscribe Count Since Send",
+ "description": "The number of members who have unsubscribed since the last campaign was sent.",
+ "readOnly": true
+ },
+ "cleaned_count_since_send": {
+ "type": "integer",
+ "title": "Cleaned Count Since Send",
+ "description": "The number of members cleaned from the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "campaign_count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in any status that use this list.",
+ "readOnly": true
+ },
+ "campaign_last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Campaign Last Sent",
+ "description": "The date and time the last campaign was sent to this list in ISO 8601 format. This is updated when a campaign is sent to 10 or more recipients.",
+ "readOnly": true
+ },
+ "merge_field_count": {
+ "type": "integer",
+ "title": "Merge Field Count",
+ "description": "The number of merge fields ([audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)) for this list (doesn't include EMAIL).",
+ "readOnly": true
+ },
+ "avg_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The average number of subscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "avg_unsub_rate": {
+ "type": "number",
+ "title": "Average Unsubscription Rate",
+ "description": "The average number of unsubscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "target_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The target number of subscriptions per month for the list to keep it growing (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average open rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average click rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "last_sub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Subscribe",
+ "description": "The date and time of the last time someone subscribed to this list in ISO 8601 format.",
+ "readOnly": true
+ },
+ "last_unsub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Unsubscribe",
+ "description": "The date and time of the last time someone unsubscribed from this list in ISO 8601 format.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Lists",
+ "description": "An array of objects, each representing a list."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "constraints": {
+ "type": "object",
+ "title": "Collection Authorization",
+ "description": "Do particular authorization constraints around this collection limit creation of new instances?",
+ "properties": {
+ "may_create": {
+ "type": "boolean",
+ "title": "Resource creation authorization",
+ "description": "May the user create additional instances of this resource?"
+ },
+ "max_instances": {
+ "type": "integer",
+ "title": "Max instances",
+ "description": "How many total instances of this resource are allowed? This is independent of any filter conditions applied to the query. As a special case, -1 indicates unlimited."
+ },
+ "current_total_instances": {
+ "type": "integer",
+ "title": "Current total instances",
+ "description": "How many total instances of this resource are already in use? This is independent of any filter conditions applied to the query. Value may be larger than max_instances. As a special case, -1 is returned when access is unlimited."
+ }
+ },
+ "required": [
+ "may_create",
+ "max_instances"
+ ]
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ },
+ "required": [
+ "lists"
+ ]
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all_lists",
+ "methodNameCamel": "getAllLists"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add list",
+ "description": "Create a new list in your Mailchimp account.",
+ "operationId": "postLists",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies this list.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "List Web ID",
+ "description": "The ID used in the Mailchimp web application. View this list in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/?id={web_id}`.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ }
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.",
+ "default": false
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ }
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Creation Date",
+ "description": "The date and time that this list was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "list_rating": {
+ "type": "integer",
+ "title": "List Rating",
+ "description": "An auto-generated activity score for the list (0-5).",
+ "readOnly": true
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "subscribe_url_short": {
+ "type": "string",
+ "title": "Subscribe URL Short",
+ "description": "Our [url shortened](https://mailchimp.com/help/share-your-signup-form/) version of this list's subscribe form.",
+ "readOnly": true
+ },
+ "subscribe_url_long": {
+ "type": "string",
+ "title": "Subscribe URL Long",
+ "description": "The full version of this list's subscribe form (host will vary).",
+ "readOnly": true
+ },
+ "beamer_address": {
+ "type": "string",
+ "title": "Beamer Address",
+ "description": "The list's [Email Beamer](https://mailchimp.com/help/use-email-beamer-to-create-a-campaign/) address.",
+ "readOnly": true
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "enum": [
+ "pub",
+ "prv"
+ ],
+ "description": "Legacy - visibility settings are no longer used"
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email.",
+ "default": false
+ },
+ "has_welcome": {
+ "type": "boolean",
+ "title": "Has Welcome",
+ "description": "Whether or not this list has a welcome automation connected. Welcome Automations: welcomeSeries, singleWelcome, emailFollowup.",
+ "default": false,
+ "example": false
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.",
+ "default": false
+ },
+ "modules": {
+ "type": "array",
+ "title": "Modules",
+ "description": "Any list-specific modules installed for this list.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "stats": {
+ "type": "object",
+ "title": "Statistics",
+ "description": "Stats for the list. Many of these are cached for at least five minutes.",
+ "readOnly": true,
+ "properties": {
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active members in the list.",
+ "readOnly": true
+ },
+ "total_contacts": {
+ "type": "integer",
+ "title": "Total Contacts",
+ "description": "The number of contacts in the list, including subscribed, unsubscribed, pending, cleaned, deleted, transactional, and those that need to be reconfirmed. Requires include_total_contacts query parameter to be included.",
+ "readOnly": true
+ },
+ "unsubscribe_count": {
+ "type": "integer",
+ "title": "Unsubscribe Count",
+ "description": "The number of members who have unsubscribed from the list.",
+ "readOnly": true
+ },
+ "cleaned_count": {
+ "type": "integer",
+ "title": "Cleaned Count",
+ "description": "The number of members cleaned from the list.",
+ "readOnly": true
+ },
+ "member_count_since_send": {
+ "type": "integer",
+ "title": "Member Count Since Send",
+ "description": "The number of active members in the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "unsubscribe_count_since_send": {
+ "type": "integer",
+ "title": "Unsubscribe Count Since Send",
+ "description": "The number of members who have unsubscribed since the last campaign was sent.",
+ "readOnly": true
+ },
+ "cleaned_count_since_send": {
+ "type": "integer",
+ "title": "Cleaned Count Since Send",
+ "description": "The number of members cleaned from the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "campaign_count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in any status that use this list.",
+ "readOnly": true
+ },
+ "campaign_last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Campaign Last Sent",
+ "description": "The date and time the last campaign was sent to this list in ISO 8601 format. This is updated when a campaign is sent to 10 or more recipients.",
+ "readOnly": true
+ },
+ "merge_field_count": {
+ "type": "integer",
+ "title": "Merge Field Count",
+ "description": "The number of merge fields ([audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)) for this list (doesn't include EMAIL).",
+ "readOnly": true
+ },
+ "avg_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The average number of subscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "avg_unsub_rate": {
+ "type": "number",
+ "title": "Average Unsubscription Rate",
+ "description": "The average number of unsubscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "target_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The target number of subscriptions per month for the list to keep it growing (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average open rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average click rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "last_sub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Subscribe",
+ "description": "The date and time of the last time someone subscribed to this list in ISO 8601 format.",
+ "readOnly": true
+ },
+ "last_unsub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Unsubscribe",
+ "description": "The date and time of the last time someone unsubscribed from this list in ISO 8601 format.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_list",
+ "methodNameCamel": "createList"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "required": [
+ "name",
+ "permission_reminder",
+ "email_type_option",
+ "contact",
+ "campaign_defaults"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "required": [
+ "company",
+ "address1",
+ "city",
+ "country"
+ ],
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ }
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.",
+ "default": false
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "required": [
+ "from_name",
+ "from_email",
+ "subject",
+ "language"
+ ],
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ }
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email.",
+ "default": false
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.",
+ "default": false
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}": {
+ "get": {
+ "summary": "Get list info",
+ "description": "Get information about a specific list in your Mailchimp account. Results include list members who have signed up but haven't confirmed their subscription yet and unsubscribed or cleaned.",
+ "operationId": "getListsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "include_total_contacts",
+ "x-title": "Include Total Contacts",
+ "in": "query",
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies this list.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "List Web ID",
+ "description": "The ID used in the Mailchimp web application. View this list in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/?id={web_id}`.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ }
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.",
+ "default": false
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ }
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Creation Date",
+ "description": "The date and time that this list was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "list_rating": {
+ "type": "integer",
+ "title": "List Rating",
+ "description": "An auto-generated activity score for the list (0-5).",
+ "readOnly": true
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "subscribe_url_short": {
+ "type": "string",
+ "title": "Subscribe URL Short",
+ "description": "Our [url shortened](https://mailchimp.com/help/share-your-signup-form/) version of this list's subscribe form.",
+ "readOnly": true
+ },
+ "subscribe_url_long": {
+ "type": "string",
+ "title": "Subscribe URL Long",
+ "description": "The full version of this list's subscribe form (host will vary).",
+ "readOnly": true
+ },
+ "beamer_address": {
+ "type": "string",
+ "title": "Beamer Address",
+ "description": "The list's [Email Beamer](https://mailchimp.com/help/use-email-beamer-to-create-a-campaign/) address.",
+ "readOnly": true
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "enum": [
+ "pub",
+ "prv"
+ ],
+ "description": "Legacy - visibility settings are no longer used"
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email.",
+ "default": false
+ },
+ "has_welcome": {
+ "type": "boolean",
+ "title": "Has Welcome",
+ "description": "Whether or not this list has a welcome automation connected. Welcome Automations: welcomeSeries, singleWelcome, emailFollowup.",
+ "default": false,
+ "example": false
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.",
+ "default": false
+ },
+ "modules": {
+ "type": "array",
+ "title": "Modules",
+ "description": "Any list-specific modules installed for this list.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "stats": {
+ "type": "object",
+ "title": "Statistics",
+ "description": "Stats for the list. Many of these are cached for at least five minutes.",
+ "readOnly": true,
+ "properties": {
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active members in the list.",
+ "readOnly": true
+ },
+ "total_contacts": {
+ "type": "integer",
+ "title": "Total Contacts",
+ "description": "The number of contacts in the list, including subscribed, unsubscribed, pending, cleaned, deleted, transactional, and those that need to be reconfirmed. Requires include_total_contacts query parameter to be included.",
+ "readOnly": true
+ },
+ "unsubscribe_count": {
+ "type": "integer",
+ "title": "Unsubscribe Count",
+ "description": "The number of members who have unsubscribed from the list.",
+ "readOnly": true
+ },
+ "cleaned_count": {
+ "type": "integer",
+ "title": "Cleaned Count",
+ "description": "The number of members cleaned from the list.",
+ "readOnly": true
+ },
+ "member_count_since_send": {
+ "type": "integer",
+ "title": "Member Count Since Send",
+ "description": "The number of active members in the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "unsubscribe_count_since_send": {
+ "type": "integer",
+ "title": "Unsubscribe Count Since Send",
+ "description": "The number of members who have unsubscribed since the last campaign was sent.",
+ "readOnly": true
+ },
+ "cleaned_count_since_send": {
+ "type": "integer",
+ "title": "Cleaned Count Since Send",
+ "description": "The number of members cleaned from the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "campaign_count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in any status that use this list.",
+ "readOnly": true
+ },
+ "campaign_last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Campaign Last Sent",
+ "description": "The date and time the last campaign was sent to this list in ISO 8601 format. This is updated when a campaign is sent to 10 or more recipients.",
+ "readOnly": true
+ },
+ "merge_field_count": {
+ "type": "integer",
+ "title": "Merge Field Count",
+ "description": "The number of merge fields ([audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)) for this list (doesn't include EMAIL).",
+ "readOnly": true
+ },
+ "avg_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The average number of subscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "avg_unsub_rate": {
+ "type": "number",
+ "title": "Average Unsubscription Rate",
+ "description": "The average number of unsubscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "target_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The target number of subscriptions per month for the list to keep it growing (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average open rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average click rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "last_sub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Subscribe",
+ "description": "The date and time of the last time someone subscribed to this list in ISO 8601 format.",
+ "readOnly": true
+ },
+ "last_unsub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Unsubscribe",
+ "description": "The date and time of the last time someone unsubscribed from this list in ISO 8601 format.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list",
+ "methodNameCamel": "getList"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update lists",
+ "description": "Update the settings for a specific list.",
+ "operationId": "patchListsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "A string that uniquely identifies this list.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "List Web ID",
+ "description": "The ID used in the Mailchimp web application. View this list in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/?id={web_id}`.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ }
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.",
+ "default": false
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ }
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Creation Date",
+ "description": "The date and time that this list was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "list_rating": {
+ "type": "integer",
+ "title": "List Rating",
+ "description": "An auto-generated activity score for the list (0-5).",
+ "readOnly": true
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "subscribe_url_short": {
+ "type": "string",
+ "title": "Subscribe URL Short",
+ "description": "Our [url shortened](https://mailchimp.com/help/share-your-signup-form/) version of this list's subscribe form.",
+ "readOnly": true
+ },
+ "subscribe_url_long": {
+ "type": "string",
+ "title": "Subscribe URL Long",
+ "description": "The full version of this list's subscribe form (host will vary).",
+ "readOnly": true
+ },
+ "beamer_address": {
+ "type": "string",
+ "title": "Beamer Address",
+ "description": "The list's [Email Beamer](https://mailchimp.com/help/use-email-beamer-to-create-a-campaign/) address.",
+ "readOnly": true
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "enum": [
+ "pub",
+ "prv"
+ ],
+ "description": "Legacy - visibility settings are no longer used"
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email.",
+ "default": false
+ },
+ "has_welcome": {
+ "type": "boolean",
+ "title": "Has Welcome",
+ "description": "Whether or not this list has a welcome automation connected. Welcome Automations: welcomeSeries, singleWelcome, emailFollowup.",
+ "default": false,
+ "example": false
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.",
+ "default": false
+ },
+ "modules": {
+ "type": "array",
+ "title": "Modules",
+ "description": "Any list-specific modules installed for this list.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "stats": {
+ "type": "object",
+ "title": "Statistics",
+ "description": "Stats for the list. Many of these are cached for at least five minutes.",
+ "readOnly": true,
+ "properties": {
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active members in the list.",
+ "readOnly": true
+ },
+ "total_contacts": {
+ "type": "integer",
+ "title": "Total Contacts",
+ "description": "The number of contacts in the list, including subscribed, unsubscribed, pending, cleaned, deleted, transactional, and those that need to be reconfirmed. Requires include_total_contacts query parameter to be included.",
+ "readOnly": true
+ },
+ "unsubscribe_count": {
+ "type": "integer",
+ "title": "Unsubscribe Count",
+ "description": "The number of members who have unsubscribed from the list.",
+ "readOnly": true
+ },
+ "cleaned_count": {
+ "type": "integer",
+ "title": "Cleaned Count",
+ "description": "The number of members cleaned from the list.",
+ "readOnly": true
+ },
+ "member_count_since_send": {
+ "type": "integer",
+ "title": "Member Count Since Send",
+ "description": "The number of active members in the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "unsubscribe_count_since_send": {
+ "type": "integer",
+ "title": "Unsubscribe Count Since Send",
+ "description": "The number of members who have unsubscribed since the last campaign was sent.",
+ "readOnly": true
+ },
+ "cleaned_count_since_send": {
+ "type": "integer",
+ "title": "Cleaned Count Since Send",
+ "description": "The number of members cleaned from the list since the last campaign was sent.",
+ "readOnly": true
+ },
+ "campaign_count": {
+ "type": "integer",
+ "title": "Campaign Count",
+ "description": "The number of campaigns in any status that use this list.",
+ "readOnly": true
+ },
+ "campaign_last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Campaign Last Sent",
+ "description": "The date and time the last campaign was sent to this list in ISO 8601 format. This is updated when a campaign is sent to 10 or more recipients.",
+ "readOnly": true
+ },
+ "merge_field_count": {
+ "type": "integer",
+ "title": "Merge Field Count",
+ "description": "The number of merge fields ([audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)) for this list (doesn't include EMAIL).",
+ "readOnly": true
+ },
+ "avg_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The average number of subscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "avg_unsub_rate": {
+ "type": "number",
+ "title": "Average Unsubscription Rate",
+ "description": "The average number of unsubscriptions per month for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "target_sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The target number of subscriptions per month for the list to keep it growing (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average open rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average click rate (a percentage represented as a number between 0 and 100) per campaign for the list (not returned if we haven't calculated it yet).",
+ "readOnly": true
+ },
+ "last_sub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Subscribe",
+ "description": "The date and time of the last time someone subscribed to this list in ISO 8601 format.",
+ "readOnly": true
+ },
+ "last_unsub_date": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Date of Last List Unsubscribe",
+ "description": "The date and time of the last time someone unsubscribed from this list in ISO 8601 format.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_list",
+ "methodNameCamel": "updateList"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Subscriber List",
+ "description": "Information about a specific list.",
+ "required": [
+ "name",
+ "permission_reminder",
+ "email_type_option",
+ "contact",
+ "campaign_defaults"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list."
+ },
+ "contact": {
+ "type": "object",
+ "title": "List Contact",
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.",
+ "required": [
+ "company",
+ "address1",
+ "city",
+ "state",
+ "zip",
+ "country"
+ ],
+ "properties": {
+ "company": {
+ "type": "string",
+ "title": "Company Name",
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address",
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "type": "string",
+ "title": "City",
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "type": "string",
+ "title": "State",
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the list contact."
+ }
+ }
+ },
+ "permission_reminder": {
+ "type": "string",
+ "title": "Permission Reminder",
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "type": "boolean",
+ "title": "Use Archive Bar",
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.",
+ "default": false
+ },
+ "campaign_defaults": {
+ "type": "object",
+ "title": "Campaign Defaults",
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.",
+ "required": [
+ "from_name",
+ "from_email",
+ "subject",
+ "language"
+ ],
+ "properties": {
+ "from_name": {
+ "type": "string",
+ "title": "Sender's Name",
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "Sender's Email Address",
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "type": "string",
+ "title": "Subject",
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "The default language for this lists's forms."
+ }
+ }
+ },
+ "notify_on_subscribe": {
+ "type": "string",
+ "title": "Notify on Subscribe",
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "notify_on_unsubscribe": {
+ "type": "string",
+ "title": "Notify on Unsubscribe",
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.",
+ "default": false
+ },
+ "email_type_option": {
+ "type": "boolean",
+ "title": "Email Type Option",
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "type": "boolean",
+ "title": "Double Opt In",
+ "description": "Whether or not to require the subscriber to confirm subscription via email.",
+ "default": false
+ },
+ "marketing_permissions": {
+ "type": "boolean",
+ "title": "Marketing Permissions",
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.",
+ "default": false
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete list",
+ "description": "Delete a list from your Mailchimp account. If you delete a list, you'll lose the list history\u2014including subscriber activity, unsubscribes, complaints, and bounces. You\u2019ll also lose subscribers\u2019 email addresses, unless you exported and backed up your list.",
+ "operationId": "deleteListsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_list",
+ "methodNameCamel": "deleteList"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Batch subscribe or unsubscribe",
+ "description": "Batch subscribe or unsubscribe list members.",
+ "operationId": "postListsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "skip_merge_validation",
+ "x-title": "Skip Merge Validation",
+ "in": "query",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "name": "skip_duplicate_check",
+ "x-title": "Skip Duplicate Check",
+ "in": "query",
+ "description": "If skip_duplicate_check is true, we will ignore duplicates sent in the request when using the batch sub/unsub on the lists endpoint. The status of the first appearance in the request will be saved. This defaults to false.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch update List members",
+ "description": "Batch update list members.",
+ "properties": {
+ "new_members": {
+ "type": "array",
+ "title": "New members",
+ "description": "An array of objects, each representing a new member that was added to the list.",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "A unique ID for the contact record.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Member Merge Var",
+ "description": "An individual merge var and value for a member.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags applied to this member.",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "updated_members": {
+ "type": "array",
+ "title": "Updated Members",
+ "description": "An array of objects, each representing an existing list member whose subscription status was updated.",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "A unique ID for the contact record.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Member Merge Var",
+ "description": "An individual merge var and value for a member.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags applied to this member.",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "errors": {
+ "type": "array",
+ "title": "Errors",
+ "description": "An array of objects, each representing an email address that could not be added to the list or updated and an error message providing more details.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Member Email address",
+ "description": "The email address that could not be added or updated."
+ },
+ "error": {
+ "type": "string",
+ "title": "Error message",
+ "description": "The error message indicating why the email address could not be added or updated."
+ },
+ "error_code": {
+ "type": "string",
+ "title": "Error code",
+ "description": "A unique code that identifies this specifc error.",
+ "enum": [
+ "ERROR_CONTACT_EXISTS",
+ "ERROR_GENERIC"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Field",
+ "description": "If the error is field-related, information about which field is at issue."
+ },
+ "field_message": {
+ "type": "string",
+ "title": "Field message",
+ "description": "Message indicating how to resolve a field-related error."
+ }
+ }
+ }
+ },
+ "total_created": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query, irrespective of pagination.",
+ "example": 42
+ },
+ "total_updated": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query, irrespective of pagination.",
+ "example": 42
+ },
+ "error_count": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query, irrespective of pagination.",
+ "example": 42
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "batch_list_members",
+ "methodNameCamel": "batchListMembers"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Members to Subscribe/Unsubscribe to/from a List in batch",
+ "description": "Members to subscribe to or unsubscribe from a list.",
+ "required": [
+ "members"
+ ],
+ "properties": {
+ "members": {
+ "type": "array",
+ "title": "List Members",
+ "description": "An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call.",
+ "items": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ }
+ }
+ }
+ },
+ "sync_tags": {
+ "type": "boolean",
+ "title": "Sync Tags",
+ "description": "Whether this batch operation will replace all existing tags with tags in request."
+ },
+ "update_existing": {
+ "type": "boolean",
+ "title": "Update Existing Members",
+ "description": "Whether this batch operation will change existing members' subscription status."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/abuse-reports": {
+ "get": {
+ "summary": "List abuse reports",
+ "description": "Get all abuse reports for a specific list.",
+ "operationId": "getListsIdAbuseReports",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Abuse Complaints",
+ "description": "A collection of abuse complaints for a specific list. An abuse complaint occurs when your recipient clicks to 'report spam' in their email program.",
+ "properties": {
+ "abuse_reports": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Abuse Complaint",
+ "description": "Details of abuse complaints for a specific list. An abuse complaint occurs when your recipient clicks to 'report spam' in their email program.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Abuse Report ID",
+ "description": "The id for the abuse report",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id for the abuse report",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id for the abuse report.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "description": "Date for the abuse report",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Abuse Reports",
+ "description": "An array of objects, each representing an abuse report resource."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id for the abuse report."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_abuse_reports",
+ "methodNameCamel": "getListAbuseReports"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/abuse-reports/{report_id}": {
+ "get": {
+ "summary": "Get abuse report",
+ "description": "Get details about a specific abuse report.",
+ "operationId": "getListsIdAbuseReportsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "report_id",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The id for the abuse report."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Abuse Complaint",
+ "description": "Details of abuse complaints for a specific list. An abuse complaint occurs when your recipient clicks to 'report spam' in their email program.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Abuse Report ID",
+ "description": "The id for the abuse report",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id for the abuse report",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id for the abuse report.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "description": "Date for the abuse report",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_abuse_report_details",
+ "methodNameCamel": "getListAbuseReportDetails"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/activity": {
+ "get": {
+ "summary": "List recent activity",
+ "description": "Get up to the previous 180 days of daily detailed aggregated activity stats for a list, not including Automation activity.",
+ "operationId": "getListsIdActivity",
+ "parameters": [
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Activity",
+ "description": "Up to the previous 180 days of daily detailed aggregated activity stats for a specific list. Does not include AutoResponder or Automation activity.",
+ "properties": {
+ "activity": {
+ "type": "array",
+ "title": "List Activity",
+ "description": "Recent list activity.",
+ "items": {
+ "type": "object",
+ "title": "Daily List Activity",
+ "description": "One day's worth of list activity. Doesn't include Automation activity.",
+ "properties": {
+ "day": {
+ "type": "string",
+ "title": "Day",
+ "description": "The date for the activity summary.",
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent on the date for the activity summary.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "recipient_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "The number of clicks.",
+ "readOnly": true
+ },
+ "hard_bounce": {
+ "type": "integer",
+ "title": "Hard Bounces",
+ "description": "The number of hard bounces.",
+ "readOnly": true
+ },
+ "soft_bounce": {
+ "type": "integer",
+ "title": "Soft Bounces",
+ "description": "The number of soft bounces",
+ "readOnly": true
+ },
+ "subs": {
+ "type": "integer",
+ "title": "Subscribes",
+ "description": "The number of subscribes.",
+ "readOnly": true
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "The number of unsubscribes.",
+ "readOnly": true
+ },
+ "other_adds": {
+ "type": "integer",
+ "title": "Other Adds",
+ "description": "The number of subscribers who may have been added outside of the [double opt-in process](https://mailchimp.com/help/about-double-opt-in/), such as imports or API activity.",
+ "readOnly": true
+ },
+ "other_removes": {
+ "type": "integer",
+ "title": "Other Removes",
+ "description": "The number of subscribers who may have been removed outside of unsubscribing or reporting an email as spam (for example, deleted subscribers).",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_recent_activity",
+ "methodNameCamel": "getListRecentActivity"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/clients": {
+ "get": {
+ "summary": "List top email clients",
+ "description": "Get a list of the top email clients based on user-agent strings.",
+ "operationId": "getListsIdClients",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Email Clients",
+ "description": "The top email clients based on user-agent strings.",
+ "properties": {
+ "clients": {
+ "type": "array",
+ "title": "Email Clients",
+ "description": "An array of top email clients.",
+ "items": {
+ "type": "object",
+ "title": "Email Client",
+ "description": "The email client.",
+ "properties": {
+ "client": {
+ "type": "string",
+ "title": "Client",
+ "description": "The name of the email client.",
+ "readOnly": true
+ },
+ "members": {
+ "type": "integer",
+ "title": "Members",
+ "description": "The number of subscribed members who used this email client.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_clients",
+ "methodNameCamel": "getListClients"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/growth-history": {
+ "get": {
+ "summary": "List growth history data",
+ "description": "Get a month-by-month summary of a specific list's growth activity.",
+ "operationId": "getListsIdGrowthHistory",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "month"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Growth History",
+ "description": "A month-by-month summary of a specific list's growth activity.",
+ "properties": {
+ "history": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Growth History",
+ "description": "A summary of a specific list's growth activity for a specific month and year.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id for the growth activity report.",
+ "readOnly": true
+ },
+ "month": {
+ "type": "string",
+ "title": "Month",
+ "description": "The month that the growth history is describing.",
+ "readOnly": true
+ },
+ "existing": {
+ "type": "integer",
+ "title": "Existing",
+ "description": "(deprecated)",
+ "readOnly": true
+ },
+ "imports": {
+ "type": "integer",
+ "title": "Imports",
+ "description": "(deprecated)",
+ "readOnly": true
+ },
+ "optins": {
+ "type": "integer",
+ "title": "Opt-in",
+ "description": "(deprecated)",
+ "readOnly": true
+ },
+ "subscribed": {
+ "type": "integer",
+ "title": "Subscribed",
+ "description": "Total subscribed members on the list at the end of the month.",
+ "readOnly": true
+ },
+ "unsubscribed": {
+ "type": "integer",
+ "title": "Unsubscribed",
+ "description": "Newly unsubscribed members on the list for a specific month.",
+ "readOnly": true
+ },
+ "reconfirm": {
+ "type": "integer",
+ "title": "Reconfirm",
+ "description": "Newly reconfirmed members on the list for a specific month.",
+ "readOnly": true
+ },
+ "cleaned": {
+ "type": "integer",
+ "title": "Cleaned",
+ "description": "Newly cleaned (hard-bounced) members on the list for a specific month.",
+ "readOnly": true
+ },
+ "pending": {
+ "type": "integer",
+ "title": "Pending",
+ "description": "Pending members on the list for a specific month.",
+ "readOnly": true
+ },
+ "deleted": {
+ "type": "integer",
+ "title": "Deleted",
+ "description": "Newly deleted members on the list for a specific month.",
+ "readOnly": true
+ },
+ "transactional": {
+ "type": "integer",
+ "title": "Transactional",
+ "description": "Subscribers that have been sent transactional emails via Mandrill.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Members",
+ "description": "An array of objects, each representing a monthly growth report for a list."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_growth_history",
+ "methodNameCamel": "getListGrowthHistory"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/growth-history/{month}": {
+ "get": {
+ "summary": "Get growth history by month",
+ "description": "Get a summary of a specific list's growth activity for a specific month and year.",
+ "operationId": "getListsIdGrowthHistoryId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "month",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A specific month of list growth history."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Growth History",
+ "description": "A summary of a specific list's growth activity for a specific month and year.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id for the growth activity report.",
+ "readOnly": true
+ },
+ "month": {
+ "type": "string",
+ "title": "Month",
+ "description": "The month that the growth history is describing.",
+ "readOnly": true
+ },
+ "existing": {
+ "type": "integer",
+ "title": "Existing",
+ "description": "(deprecated)",
+ "readOnly": true
+ },
+ "imports": {
+ "type": "integer",
+ "title": "Imports",
+ "description": "(deprecated)",
+ "readOnly": true
+ },
+ "optins": {
+ "type": "integer",
+ "title": "Opt-in",
+ "description": "(deprecated)",
+ "readOnly": true
+ },
+ "subscribed": {
+ "type": "integer",
+ "title": "Subscribed",
+ "description": "Total subscribed members on the list at the end of the month.",
+ "readOnly": true
+ },
+ "unsubscribed": {
+ "type": "integer",
+ "title": "Unsubscribed",
+ "description": "Newly unsubscribed members on the list for a specific month.",
+ "readOnly": true
+ },
+ "reconfirm": {
+ "type": "integer",
+ "title": "Reconfirm",
+ "description": "Newly reconfirmed members on the list for a specific month.",
+ "readOnly": true
+ },
+ "cleaned": {
+ "type": "integer",
+ "title": "Cleaned",
+ "description": "Newly cleaned (hard-bounced) members on the list for a specific month.",
+ "readOnly": true
+ },
+ "pending": {
+ "type": "integer",
+ "title": "Pending",
+ "description": "Pending members on the list for a specific month.",
+ "readOnly": true
+ },
+ "deleted": {
+ "type": "integer",
+ "title": "Deleted",
+ "description": "Newly deleted members on the list for a specific month.",
+ "readOnly": true
+ },
+ "transactional": {
+ "type": "integer",
+ "title": "Transactional",
+ "description": "Subscribers that have been sent transactional emails via Mandrill.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_growth_history_by_month",
+ "methodNameCamel": "getListGrowthHistoryByMonth"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/interest-categories": {
+ "get": {
+ "summary": "List interest categories",
+ "description": "Get information about a list's interest categories.",
+ "operationId": "getListsIdInterestCategories",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "type",
+ "x-title": "Interest Group Type",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results a type of interest group",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interest Groupings",
+ "description": "Information about this list's interest categories.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID for the list that this category belongs to.",
+ "readOnly": true
+ },
+ "categories": {
+ "type": "array",
+ "title": "Interest Categories",
+ "description": "This array contains individual interest categories.",
+ "items": {
+ "type": "object",
+ "title": "Interest Category",
+ "description": "Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id for the category.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "type": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_interest_categories",
+ "methodNameCamel": "getListInterestCategories"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add interest category",
+ "description": "Create a new interest category.",
+ "operationId": "postListsIdInterestCategories",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interest Category",
+ "description": "Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id for the category.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "type": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_list_interest_category",
+ "methodNameCamel": "createListInterestCategory"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Interest Category",
+ "description": "Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.",
+ "required": [
+ "title",
+ "type"
+ ],
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "type": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/interest-categories/{interest_category_id}": {
+ "get": {
+ "summary": "Get interest category info",
+ "description": "Get information about a specific interest category.",
+ "operationId": "getListsIdInterestCategoriesId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interest Category",
+ "description": "Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id for the category.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "type": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_interest_category",
+ "methodNameCamel": "getInterestCategory"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update interest category",
+ "description": "Update a specific interest category.",
+ "operationId": "patchListsIdInterestCategoriesId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interest Category",
+ "description": "Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id for the category.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "type": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_interest_category",
+ "methodNameCamel": "updateInterestCategory"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Interest Category",
+ "description": "Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.",
+ "required": [
+ "title",
+ "type"
+ ],
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Name",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "type": {
+ "type": "string",
+ "title": "Display Type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete interest category",
+ "description": "Delete a specific interest category.",
+ "operationId": "deleteListsIdInterestCategoriesId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_interest_category",
+ "methodNameCamel": "deleteInterestCategory"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/interest-categories/{interest_category_id}/interests": {
+ "get": {
+ "summary": "List interests in category",
+ "description": "Get a list of this category's interests.",
+ "operationId": "getListsIdInterestCategoriesIdInterests",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interests",
+ "description": "A list of this category's interests",
+ "properties": {
+ "interests": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Interest",
+ "description": "Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.",
+ "properties": {
+ "category_id": {
+ "type": "string",
+ "title": "Interest Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID for the list that this interest belongs to.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Interest ID",
+ "description": "The ID for the interest.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "subscriber_count": {
+ "type": "string",
+ "title": "Subscriber Count",
+ "description": "The number of subscribers associated with this interest.",
+ "readOnly": true
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Interests",
+ "description": "An array of this category's interests"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id that the interests belong to."
+ },
+ "category_id": {
+ "type": "string",
+ "title": "Interest Category ID",
+ "description": "The id for the interest category."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_interest_category_interests",
+ "methodNameCamel": "listInterestCategoryInterests"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add interest in category",
+ "description": "Create a new interest or 'group name' for a specific category.",
+ "operationId": "postListsIdInterestCategoriesIdInterests",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interest",
+ "description": "Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.",
+ "properties": {
+ "category_id": {
+ "type": "string",
+ "title": "Interest Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID for the list that this interest belongs to.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Interest ID",
+ "description": "The ID for the interest.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "subscriber_count": {
+ "type": "string",
+ "title": "Subscriber Count",
+ "description": "The number of subscribers associated with this interest.",
+ "readOnly": true
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_interest_category_interest",
+ "methodNameCamel": "createInterestCategoryInterest"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Interest",
+ "description": "Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}": {
+ "get": {
+ "summary": "Get interest in category",
+ "description": "Get interests or 'group names' for a specific category.",
+ "operationId": "getListsIdInterestCategoriesIdInterestsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_id",
+ "x-title": "Interest ID",
+ "in": "path",
+ "description": "The specific interest or 'group name'.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interest",
+ "description": "Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.",
+ "properties": {
+ "category_id": {
+ "type": "string",
+ "title": "Interest Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID for the list that this interest belongs to.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Interest ID",
+ "description": "The ID for the interest.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "subscriber_count": {
+ "type": "string",
+ "title": "Subscriber Count",
+ "description": "The number of subscribers associated with this interest.",
+ "readOnly": true
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_interest_category_interest",
+ "methodNameCamel": "getInterestCategoryInterest"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update interest in category",
+ "description": "Update interests or 'group names' for a specific category.",
+ "operationId": "patchListsIdInterestCategoriesIdInterestsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_id",
+ "x-title": "Interest ID",
+ "in": "path",
+ "description": "The specific interest or 'group name'.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Interest",
+ "description": "Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.",
+ "properties": {
+ "category_id": {
+ "type": "string",
+ "title": "Interest Category ID",
+ "description": "The id for the interest category.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID for the list that this interest belongs to.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "title": "Interest ID",
+ "description": "The ID for the interest.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "subscriber_count": {
+ "type": "string",
+ "title": "Subscriber Count",
+ "description": "The number of subscribers associated with this interest.",
+ "readOnly": true
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_interest_category_interest",
+ "methodNameCamel": "updateInterestCategoryInterest"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Interest",
+ "description": "Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Interest Name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The display order for interests."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete interest in category",
+ "description": "Delete interests or group names in a specific category.",
+ "operationId": "deleteListsIdInterestCategoriesIdInterestsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "path",
+ "description": "The unique ID for the interest category.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "interest_id",
+ "x-title": "Interest ID",
+ "in": "path",
+ "description": "The specific interest or 'group name'.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_interest_category_interest",
+ "methodNameCamel": "deleteInterestCategoryInterest"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/segments": {
+ "get": {
+ "summary": "List segments",
+ "description": "Get information about all available segments for a specific list.",
+ "operationId": "previewASegment",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "type",
+ "x-title": "Segment Type",
+ "in": "query",
+ "required": false,
+ "description": "Limit results based on segment type.",
+ "type": "string"
+ },
+ {
+ "name": "since_created_at",
+ "x-title": "Since Created At",
+ "in": "query",
+ "description": "Restrict results to segments created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_created_at",
+ "x-title": "Before Created At",
+ "in": "query",
+ "description": "Restrict results to segments created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "include_cleaned",
+ "in": "query",
+ "x-title": "Include Cleaned",
+ "description": "Include cleaned members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ },
+ {
+ "name": "include_transactional",
+ "in": "query",
+ "x-title": "Include Transactional",
+ "description": "Include transactional members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ },
+ {
+ "name": "include_unsubscribed",
+ "in": "query",
+ "x-title": "Include Unsubscribed",
+ "description": "Include unsubscribed members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ },
+ {
+ "name": "since_updated_at",
+ "x-title": "Since Updated At",
+ "in": "query",
+ "description": "Restrict results to segments update after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_updated_at",
+ "x-title": "Before Updated At",
+ "in": "query",
+ "description": "Restrict results to segments update before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Collection of Segments",
+ "description": "A list of available segments.",
+ "properties": {
+ "segments": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "List",
+ "description": "Information about a specific segment.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Segment ID",
+ "description": "The unique id for the segment.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active subscribers currently included in the segment.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of segment. Static segments are now known as tags. Learn more about [tags](https://mailchimp.com/help/getting-started-tags?utm_source=mc-api&utm_medium=docs&utm_campaign=apidocs).",
+ "readOnly": true,
+ "enum": [
+ "saved",
+ "static",
+ "fuzzy"
+ ]
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the segment was created in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Date Updated",
+ "description": "The date and time the segment was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "options": {
+ "type": "object",
+ "title": "Conditions",
+ "description": "The conditions of the segment. Static segments (tags) and fuzzy segments don't have conditions.",
+ "properties": {
+ "match": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Lists",
+ "description": "An array of objects, each representing a list segment."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_segments",
+ "methodNameCamel": "listSegments"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add segment",
+ "description": "Create a new segment in a specific list.",
+ "operationId": "postListsIdSegments",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List",
+ "description": "Information about a specific segment.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Segment ID",
+ "description": "The unique id for the segment.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active subscribers currently included in the segment.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of segment. Static segments are now known as tags. Learn more about [tags](https://mailchimp.com/help/getting-started-tags?utm_source=mc-api&utm_medium=docs&utm_campaign=apidocs).",
+ "readOnly": true,
+ "enum": [
+ "saved",
+ "static",
+ "fuzzy"
+ ]
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the segment was created in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Date Updated",
+ "description": "The date and time the segment was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "options": {
+ "type": "object",
+ "title": "Conditions",
+ "description": "The conditions of the segment. Static segments (tags) and fuzzy segments don't have conditions.",
+ "properties": {
+ "match": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_segment",
+ "methodNameCamel": "createSegment"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "List",
+ "description": "Information about a specific list segment.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "static_segment": {
+ "type": "array",
+ "title": "Static Segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "options": {
+ "type": "object",
+ "title": "Conditions",
+ "description": "The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.",
+ "properties": {
+ "match": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/segments/{segment_id}": {
+ "get": {
+ "summary": "Get segment info",
+ "description": "Get information about a specific segment.",
+ "operationId": "getListsIdSegmentsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "segment_id",
+ "x-title": "Segment ID",
+ "in": "path",
+ "description": "The unique id for the segment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "include_cleaned",
+ "in": "query",
+ "x-title": "Include Cleaned",
+ "description": "Include cleaned members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ },
+ {
+ "name": "include_transactional",
+ "in": "query",
+ "x-title": "Include Transactional",
+ "description": "Include transactional members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ },
+ {
+ "name": "include_unsubscribed",
+ "in": "query",
+ "x-title": "Include Unsubscribed",
+ "description": "Include unsubscribed members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List",
+ "description": "Information about a specific segment.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Segment ID",
+ "description": "The unique id for the segment.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active subscribers currently included in the segment.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of segment. Static segments are now known as tags. Learn more about [tags](https://mailchimp.com/help/getting-started-tags?utm_source=mc-api&utm_medium=docs&utm_campaign=apidocs).",
+ "readOnly": true,
+ "enum": [
+ "saved",
+ "static",
+ "fuzzy"
+ ]
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the segment was created in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Date Updated",
+ "description": "The date and time the segment was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "options": {
+ "type": "object",
+ "title": "Conditions",
+ "description": "The conditions of the segment. Static segments (tags) and fuzzy segments don't have conditions.",
+ "properties": {
+ "match": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_segment",
+ "methodNameCamel": "getSegment"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "delete": {
+ "summary": "Delete segment",
+ "description": "Delete a specific segment in a list.",
+ "operationId": "deleteListsIdSegmentsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "segment_id",
+ "x-title": "Segment ID",
+ "in": "path",
+ "description": "The unique id for the segment.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_segment",
+ "methodNameCamel": "deleteSegment"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update segment",
+ "description": "Update a specific segment in a list.",
+ "operationId": "patchListsIdSegmentsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "segment_id",
+ "x-title": "Segment ID",
+ "in": "path",
+ "description": "The unique id for the segment.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List",
+ "description": "Information about a specific segment.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Segment ID",
+ "description": "The unique id for the segment.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "member_count": {
+ "type": "integer",
+ "title": "Member Count",
+ "description": "The number of active subscribers currently included in the segment.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of segment. Static segments are now known as tags. Learn more about [tags](https://mailchimp.com/help/getting-started-tags?utm_source=mc-api&utm_medium=docs&utm_campaign=apidocs).",
+ "readOnly": true,
+ "enum": [
+ "saved",
+ "static",
+ "fuzzy"
+ ]
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the segment was created in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Date Updated",
+ "description": "The date and time the segment was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "options": {
+ "type": "object",
+ "title": "Conditions",
+ "description": "The conditions of the segment. Static segments (tags) and fuzzy segments don't have conditions.",
+ "properties": {
+ "match": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_segment",
+ "methodNameCamel": "updateSegment"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "List",
+ "description": "Information about a specific list segment.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Segment Name",
+ "description": "The name of the segment."
+ },
+ "static_segment": {
+ "type": "array",
+ "title": "Static Segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "options": {
+ "type": "object",
+ "title": "Conditions",
+ "description": "The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.",
+ "properties": {
+ "match": {
+ "type": "string",
+ "title": "Match",
+ "description": "Match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Conditions",
+ "description": "An array of segment conditions.",
+ "items": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "post": {
+ "summary": "Batch add or remove members",
+ "description": "Batch add/remove list members to static segment",
+ "operationId": "postListsIdSegmentsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "segment_id",
+ "x-title": "Segment ID",
+ "in": "path",
+ "description": "The unique id for the segment.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Batch add/remove List members to/from static segment",
+ "description": "Batch add/remove List members to/from static segment",
+ "properties": {
+ "members_added": {
+ "type": "array",
+ "title": "Members Added",
+ "description": "An array of objects, each representing a new member that was added to the static segment.",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "A unique ID for the contact record.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Member Merge Var",
+ "description": "An individual merge var and value for a member.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags applied to this member.",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "members_removed": {
+ "type": "array",
+ "title": "Members Removed",
+ "description": "An array of objects, each representing an existing list member that got deleted from the static segment.",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "A unique ID for the contact record.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Member Merge Var",
+ "description": "An individual merge var and value for a member.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "The tags applied to this member.",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "errors": {
+ "type": "array",
+ "title": "Errors",
+ "description": "An array of objects, each representing an array of email addresses that could not be added to the segment or removed and an error message providing more details.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "email_addresses": {
+ "type": "array",
+ "title": "Email addresses added to the static segment or removed",
+ "description": "Email addresses added to the static segment or removed",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "type": "string",
+ "title": "Error message",
+ "description": "The error message indicating why the email addresses could not be added or updated."
+ }
+ }
+ }
+ },
+ "total_added": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query, irrespective of pagination.",
+ "example": 42
+ },
+ "total_removed": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query, irrespective of pagination.",
+ "example": 42
+ },
+ "error_count": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query, irrespective of pagination.",
+ "example": 42
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "batch_segment_members",
+ "methodNameCamel": "batchSegmentMembers"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Members to add/remove to/from a static segment",
+ "description": "Members to add/remove to/from a static segment",
+ "properties": {
+ "members_to_add": {
+ "type": "array",
+ "title": "Members to add to the static segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "members_to_remove": {
+ "type": "array",
+ "title": "Members to remove from the static segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/segments/{segment_id}/members": {
+ "get": {
+ "summary": "List members in segment",
+ "description": "Get information about members in a saved segment.",
+ "operationId": "getListsIdSegmentsIdMembers",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "segment_id",
+ "x-title": "Segment ID",
+ "in": "path",
+ "description": "The unique id for the segment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "include_cleaned",
+ "in": "query",
+ "x-title": "Include Cleaned",
+ "description": "Include cleaned members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ },
+ {
+ "name": "include_transactional",
+ "in": "query",
+ "x-title": "Include Transactional",
+ "description": "Include transactional members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ },
+ {
+ "name": "include_unsubscribed",
+ "in": "query",
+ "x-title": "Include Unsubscribed",
+ "description": "Include unsubscribed members in response",
+ "required": false,
+ "type": "boolean",
+ "x-example": false
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Segment Members",
+ "description": "View members in a specific list segment.",
+ "properties": {
+ "members": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Members",
+ "description": "An array of objects, each representing a specific list member."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_segment_members_list",
+ "methodNameCamel": "getSegmentMembersList"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add member to segment",
+ "description": "Add a member to a static segment.",
+ "operationId": "postListsIdSegmentsIdMembers",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "segment_id",
+ "x-title": "Segment ID",
+ "in": "path",
+ "description": "The unique id for the segment.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_segment_member",
+ "methodNameCamel": "createSegmentMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "required": [
+ "email_address"
+ ],
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/segments/{segment_id}/members/{subscriber_hash}": {
+ "delete": {
+ "summary": "Remove list member from segment",
+ "description": "Remove a member from the specified static segment.",
+ "operationId": "deleteListsIdSegmentsIdMembersId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "segment_id",
+ "x-title": "Segment ID",
+ "in": "path",
+ "description": "The unique id for the segment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "remove_segment_member",
+ "methodNameCamel": "removeSegmentMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/tag-search": {
+ "get": {
+ "summary": "Search for tags on a list by name.",
+ "description": "Search for tags on a list by name. If no name is provided, will return all tags on the list.",
+ "operationId": "searchTagsByName",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "name",
+ "x-title": "Name",
+ "in": "query",
+ "description": "The search query used to filter tags. The search query will be compared to each tag as a prefix, so all tags that have a name starting with this field will be returned.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Tag search results",
+ "description": "A list of tags matching the input query.",
+ "properties": {
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "A list of matching tags.",
+ "readOnly": true,
+ "items": {
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The unique id for the tag.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag."
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "x-custom-config": {
+ "methodNameSnake": "tag_search",
+ "methodNameCamel": "tagSearch"
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/members": {
+ "get": {
+ "summary": "List members info",
+ "description": "Get information about members in a specific Mailchimp list.",
+ "operationId": "getListsIdMembers",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "email_type",
+ "x-title": "Email Type",
+ "in": "query",
+ "required": false,
+ "description": "The email type.",
+ "type": "string"
+ },
+ {
+ "name": "status",
+ "x-title": "Subscriber Status",
+ "in": "query",
+ "required": false,
+ "description": "The subscriber's status.",
+ "type": "string",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ {
+ "name": "since_timestamp_opt",
+ "x-title": "Since Timestamp Opt",
+ "in": "query",
+ "description": "Restrict results to subscribers who opted-in after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_timestamp_opt",
+ "x-title": "Before Timestamp Opt",
+ "in": "query",
+ "description": "Restrict results to subscribers who opted-in before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "since_last_changed",
+ "x-title": "Since Last Changed",
+ "in": "query",
+ "description": "Restrict results to subscribers whose information changed after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_last_changed",
+ "x-title": "Before Last Changed",
+ "in": "query",
+ "description": "Restrict results to subscribers whose information changed before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "unique_email_id",
+ "x-title": "Unique Email ID",
+ "in": "query",
+ "description": "A unique identifier for the email address across all Mailchimp lists.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "vip_only",
+ "x-title": "VIP Only",
+ "in": "query",
+ "description": "A filter to return only the list's VIP members. Passing `true` will restrict results to VIP list members, passing `false` will return all list members.",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "name": "interest_category_id",
+ "x-title": "Interest Category ID",
+ "in": "query",
+ "description": "The unique id for the interest category.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "interest_ids",
+ "x-title": "Interest Ids",
+ "in": "query",
+ "required": false,
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_match. The value must be a comma separated list of interest ids present for any supplied interest categories.",
+ "type": "string"
+ },
+ {
+ "name": "interest_match",
+ "x-title": "Interest Match",
+ "in": "query",
+ "required": false,
+ "enum": [
+ "any",
+ "all",
+ "none"
+ ],
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_ids. \"any\" will match a member with any of the interest supplied, \"all\" will only match members with every interest supplied, and \"none\" will match members without any of the interest supplied.",
+ "type": "string"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "timestamp_signup",
+ "last_changed"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ },
+ {
+ "name": "since_last_campaign",
+ "x-title": "Since Last Campaign",
+ "in": "query",
+ "required": false,
+ "description": "Filter subscribers by those subscribed/unsubscribed/pending/cleaned since last email campaign send. Member status is required to use this filter.",
+ "type": "boolean"
+ },
+ {
+ "name": "unsubscribed_since",
+ "x-title": "Unsubscribed Since",
+ "in": "query",
+ "required": false,
+ "description": "Filter subscribers by those unsubscribed since a specific date. Using any status other than unsubscribed with this filter will result in an error.",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Manage members of a specific Mailchimp list, including currently subscribed, unsubscribed, and bounced members.",
+ "properties": {
+ "members": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Member Web ID",
+ "description": "The ID used in the Mailchimp web application. View this member in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/view?id={web_id}`.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "A subscriber's reason for unsubscribing."
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "sms_subscription_status": {
+ "type": "string",
+ "title": "SMS Subscription Status",
+ "description": "The status of an SMS subscription.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ]
+ },
+ "sms_subscription_last_updated": {
+ "type": "string",
+ "title": "SMS Subscription Last Update",
+ "description": "The datetime when the SMS subscription was last updated"
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ },
+ "ecommerce_data": {
+ "type": "object",
+ "title": "Ecommerce Stats",
+ "description": "Ecommerce stats for the list member if the list is attached to a store.",
+ "readOnly": true,
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue the list member has brought in.",
+ "readOnly": true
+ },
+ "number_of_orders": {
+ "type": "number",
+ "title": "Total Number of Orders",
+ "description": "The total number of orders placed by the list member.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "The region for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text of the marketing permission."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "source": {
+ "type": "string",
+ "title": "Subscriber Source",
+ "description": "The source from which the subscriber was added to this list.",
+ "readOnly": true
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "Returns up to 50 tags applied to this member. To retrieve all tags see [Member Tags](https://mailchimp.com/developer/marketing/api/list-member-tags/).",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Members",
+ "description": "An array of objects, each representing a specific list member."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_members_info",
+ "methodNameCamel": "getListMembersInfo"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add member to list",
+ "description": "Add a new member to the list.",
+ "operationId": "postListsIdMembers",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "skip_merge_validation",
+ "x-title": "Skip Merge Validation",
+ "in": "query",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Member Web ID",
+ "description": "The ID used in the Mailchimp web application. View this member in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/view?id={web_id}`.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "A subscriber's reason for unsubscribing."
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "sms_subscription_status": {
+ "type": "string",
+ "title": "SMS Subscription Status",
+ "description": "The status of an SMS subscription.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ]
+ },
+ "sms_subscription_last_updated": {
+ "type": "string",
+ "title": "SMS Subscription Last Update",
+ "description": "The datetime when the SMS subscription was last updated"
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ },
+ "ecommerce_data": {
+ "type": "object",
+ "title": "Ecommerce Stats",
+ "description": "Ecommerce stats for the list member if the list is attached to a store.",
+ "readOnly": true,
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue the list member has brought in.",
+ "readOnly": true
+ },
+ "number_of_orders": {
+ "type": "number",
+ "title": "Total Number of Orders",
+ "description": "The total number of orders placed by the list member.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "The region for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text of the marketing permission."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "source": {
+ "type": "string",
+ "title": "Subscriber Source",
+ "description": "The source from which the subscriber was added to this list.",
+ "readOnly": true
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "Returns up to 50 tags applied to this member. To retrieve all tags see [Member Tags](https://mailchimp.com/developer/marketing/api/list-member-tags/).",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_list_member",
+ "methodNameCamel": "addListMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "required": [
+ "email_address",
+ "status"
+ ],
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags on a member",
+ "description": "The tags that are associated with a member.",
+ "items": {
+ "type": "string",
+ "description": "The name of the tag that will be associated with this member."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}": {
+ "get": {
+ "summary": "Get member info",
+ "description": "Get information about a specific list member, including a currently subscribed, unsubscribed, or bounced member.",
+ "operationId": "getListsIdMembersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Member Web ID",
+ "description": "The ID used in the Mailchimp web application. View this member in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/view?id={web_id}`.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "A subscriber's reason for unsubscribing."
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "sms_subscription_status": {
+ "type": "string",
+ "title": "SMS Subscription Status",
+ "description": "The status of an SMS subscription.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ]
+ },
+ "sms_subscription_last_updated": {
+ "type": "string",
+ "title": "SMS Subscription Last Update",
+ "description": "The datetime when the SMS subscription was last updated"
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ },
+ "ecommerce_data": {
+ "type": "object",
+ "title": "Ecommerce Stats",
+ "description": "Ecommerce stats for the list member if the list is attached to a store.",
+ "readOnly": true,
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue the list member has brought in.",
+ "readOnly": true
+ },
+ "number_of_orders": {
+ "type": "number",
+ "title": "Total Number of Orders",
+ "description": "The total number of orders placed by the list member.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "The region for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text of the marketing permission."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "source": {
+ "type": "string",
+ "title": "Subscriber Source",
+ "description": "The source from which the subscriber was added to this list.",
+ "readOnly": true
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "Returns up to 50 tags applied to this member. To retrieve all tags see [Member Tags](https://mailchimp.com/developer/marketing/api/list-member-tags/).",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_member",
+ "methodNameCamel": "getListMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "put": {
+ "summary": "Add or update list member",
+ "description": "Add or update a list member.",
+ "operationId": "putListsIdMembersId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "skip_merge_validation",
+ "x-title": "Skip Merge Validation",
+ "in": "query",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Member Web ID",
+ "description": "The ID used in the Mailchimp web application. View this member in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/view?id={web_id}`.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "A subscriber's reason for unsubscribing."
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "sms_subscription_status": {
+ "type": "string",
+ "title": "SMS Subscription Status",
+ "description": "The status of an SMS subscription.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ]
+ },
+ "sms_subscription_last_updated": {
+ "type": "string",
+ "title": "SMS Subscription Last Update",
+ "description": "The datetime when the SMS subscription was last updated"
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ },
+ "ecommerce_data": {
+ "type": "object",
+ "title": "Ecommerce Stats",
+ "description": "Ecommerce stats for the list member if the list is attached to a store.",
+ "readOnly": true,
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue the list member has brought in.",
+ "readOnly": true
+ },
+ "number_of_orders": {
+ "type": "number",
+ "title": "Total Number of Orders",
+ "description": "The total number of orders placed by the list member.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "The region for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text of the marketing permission."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "source": {
+ "type": "string",
+ "title": "Subscriber Source",
+ "description": "The source from which the subscriber was added to this list.",
+ "readOnly": true
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "Returns up to 50 tags applied to this member. To retrieve all tags see [Member Tags](https://mailchimp.com/developer/marketing/api/list-member-tags/).",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "set_list_member",
+ "methodNameCamel": "setListMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "required": [
+ "email_address",
+ "status_if_new"
+ ],
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber. This value is required only if the email address is not already present on the list."
+ },
+ "status_if_new": {
+ "type": "string",
+ "title": "New Member Status",
+ "description": "Subscriber's status. This value is required only if the email address is not already present on the list.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "patch": {
+ "summary": "Update list member",
+ "description": "Update information for a specific list member.",
+ "operationId": "patchListsIdMembersId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "skip_merge_validation",
+ "x-title": "Skip Merge Validation",
+ "in": "query",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Member Web ID",
+ "description": "The ID used in the Mailchimp web application. View this member in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/view?id={web_id}`.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "A subscriber's reason for unsubscribing."
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "sms_subscription_status": {
+ "type": "string",
+ "title": "SMS Subscription Status",
+ "description": "The status of an SMS subscription.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ]
+ },
+ "sms_subscription_last_updated": {
+ "type": "string",
+ "title": "SMS Subscription Last Update",
+ "description": "The datetime when the SMS subscription was last updated"
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ },
+ "ecommerce_data": {
+ "type": "object",
+ "title": "Ecommerce Stats",
+ "description": "Ecommerce stats for the list member if the list is attached to a store.",
+ "readOnly": true,
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue the list member has brought in.",
+ "readOnly": true
+ },
+ "number_of_orders": {
+ "type": "number",
+ "title": "Total Number of Orders",
+ "description": "The total number of orders placed by the list member.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "The region for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text of the marketing permission."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "source": {
+ "type": "string",
+ "title": "Subscriber Source",
+ "description": "The source from which the subscriber was added to this list.",
+ "readOnly": true
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "Returns up to 50 tags applied to this member. To retrieve all tags see [Member Tags](https://mailchimp.com/developer/marketing/api/list-member-tags/).",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_list_member",
+ "methodNameCamel": "updateListMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Add List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending"
+ ]
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "format": "date-time"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Archive list member",
+ "description": "Archive a list member. To permanently delete, use the delete-permanent action.",
+ "operationId": "deleteListsIdMembersId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_list_member",
+ "methodNameCamel": "deleteListMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/activity": {
+ "get": {
+ "summary": "View recent activity 50",
+ "description": "Get the last 50 events of a member's activity on a specific list, including opens, clicks, and unsubscribes.",
+ "operationId": "getListsIdMembersIdActivity",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "query",
+ "name": "action",
+ "x-title": "Action",
+ "type": "array",
+ "required": false,
+ "items": {
+ "type": "string",
+ "enum": [
+ "abuse",
+ "bounce",
+ "click",
+ "open",
+ "sent",
+ "unsub",
+ "ecomm"
+ ]
+ },
+ "collectionFormat": "csv",
+ "description": "A comma seperated list of actions to return."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Member Activity Events",
+ "description": "The last 50 member events for a list.",
+ "properties": {
+ "activity": {
+ "type": "array",
+ "title": "Activity",
+ "description": "An array of objects, each representing a member event.",
+ "items": {
+ "type": "object",
+ "title": "Member Activity",
+ "description": "Member activity events.",
+ "properties": {
+ "action": {
+ "type": "string",
+ "title": "Action Type",
+ "description": "The type of action recorded for the subscriber."
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "format": "date-time",
+ "description": "The date and time recorded for the action."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "For clicks, the URL the subscriber clicked on."
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "The type of campaign that was sent."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The web-based ID for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "If set, the campaign's title."
+ },
+ "parent_campaign": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "The ID of the parent campaign."
+ }
+ }
+ }
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `email_id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_member_activity",
+ "methodNameCamel": "getListMemberActivity"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/activity-feed": {
+ "get": {
+ "summary": "View recent activity",
+ "description": "Get a member's activity on a specific list, including opens, clicks, and unsubscribes.",
+ "operationId": "getListsIdMembersIdActivityFeed",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "activity_filters",
+ "x-title": "Activity Filters",
+ "type": "array",
+ "required": false,
+ "items": {
+ "type": "string",
+ "enum": [
+ "bounce",
+ "click",
+ "conversation",
+ "ecommerce_signup",
+ "event",
+ "web_engagement",
+ "generic_signup",
+ "landing_page_signup",
+ "marketing_permission",
+ "note",
+ "open",
+ "order",
+ "postcard_sent",
+ "sent",
+ "signup",
+ "squatter_signup",
+ "unsub",
+ "website_signup",
+ "survey_response",
+ "sms_bulk_sent",
+ "inbox_thread",
+ "qbo_payment_link",
+ "video_call_transcripts"
+ ]
+ },
+ "collectionFormat": "csv",
+ "description": "A comma-separated list of activity filters that correspond to a set of activity types, e.g \"?activity_filters=open,bounce,click\"."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Member Activity Events",
+ "description": "The member activity events for a given member.",
+ "x-hidden": false,
+ "properties": {
+ "activity": {
+ "type": "array",
+ "title": "Activity",
+ "description": "An array of objects, each representing a contact event. There are multiple possible types, see the [activity schema documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#activity-schemas).",
+ "readOnly": true,
+ "items": {
+ "x-discriminator": {
+ "propertyName": "activity_type",
+ "type": "string"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Email Opens",
+ "description": "Activity feed item representing opening an email.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "open",
+ "enum": [
+ "open"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign's unique id."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Clicks",
+ "description": "Activity feed item representing having a link clicked by a contact.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "click",
+ "enum": [
+ "click"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign's unique id."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "link_clicked": {
+ "type": "string",
+ "title": "Link Clicked",
+ "description": "The URL of the link that was clicked."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Bounced",
+ "description": "Activity feed item representing an email to this contact bouncing.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "bounce",
+ "enum": [
+ "bounce"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign's unique id."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "bounce_type": {
+ "type": "string",
+ "title": "Bounce Type",
+ "description": "The type of bounce.",
+ "enum": [
+ "hard",
+ "soft"
+ ]
+ },
+ "bounce_has_open_activity": {
+ "type": "boolean",
+ "title": "Bounce Has Open Activity",
+ "description": "Indicates if the email associated with this bounce also has open activity on the same campaign."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "List Unsubscribed",
+ "description": "Activity feed item representing this contact unsubscribing from a list.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "unsub",
+ "enum": [
+ "unsub"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign's unique id."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Text",
+ "description": "The title of the campaign."
+ },
+ "is_admin_unsubscribed": {
+ "type": "boolean",
+ "title": "Is Admin Unsubscribed",
+ "description": "Indicates if an admin unsubscribed a contact."
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "Indicates the reason that the contact was unsubscribed."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Sent",
+ "description": "Activity feed item representing having an email sent to the contact.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "sent",
+ "enum": [
+ "sent"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign's unique id."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Conversation",
+ "description": "Activity feed item representing an individual reply in a conversation.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "conversation",
+ "enum": [
+ "conversation"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign's unique id."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "thread_id": {
+ "type": "string",
+ "title": "Thread ID",
+ "description": "The thread's unique id of the conversation referenced in this event."
+ },
+ "message_text": {
+ "type": "string",
+ "title": "Message Text",
+ "description": "The body of the message in this conversation."
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The username of the person who created this event."
+ },
+ "is_user": {
+ "type": "boolean",
+ "title": "Is User",
+ "description": "Indicates that the message created by a user (as opposed to a contact)."
+ },
+ "has_read": {
+ "type": "boolean",
+ "title": "Has Read",
+ "description": "Indicates that the message has been read."
+ },
+ "from_email": {
+ "type": "string",
+ "title": "From Email",
+ "description": "The email of the contact who sent the reply."
+ },
+ "avatar_url": {
+ "type": "string",
+ "title": "Avatar URL",
+ "description": "The gravatar URL of the contact who sent the reply."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Note",
+ "description": "Activity feed item representing a note on the contact record.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "note",
+ "enum": [
+ "note"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "updated_at_timestamp": {
+ "type": "string",
+ "title": "Updated At Timestamp",
+ "format": "date-time",
+ "description": "The updated at timestamp in ISO8601."
+ },
+ "note_id": {
+ "type": "string",
+ "title": "Note ID",
+ "description": "The note's unique id."
+ },
+ "note_text": {
+ "type": "string",
+ "title": "Note Text",
+ "description": "The note's text."
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The person who created the note."
+ },
+ "avatar_url": {
+ "type": "string",
+ "title": "Avatar URL",
+ "description": "The URL of the contact's profile gravatar image."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "Activity feed item indicating if a marketing permission was added or updated.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "marketing_permission",
+ "enum": [
+ "marketing_permission"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "marketing_permission_text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text describing this marketing permission."
+ },
+ "updated_by": {
+ "type": "string",
+ "title": "Updated By",
+ "description": "The name of the contact who updated this permission."
+ },
+ "marketing_permission_opted_in": {
+ "type": "boolean",
+ "title": "Marketing Permission Opted In",
+ "description": "Indicates if the marketing permission is enabled or not."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Postcard Sent",
+ "description": "Activity feed item representing a time when a contact was sent a particular postcard.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "postcard_sent",
+ "enum": [
+ "postcard_sent"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "outreach_id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "The outreach's unique id."
+ },
+ "outreach_title": {
+ "type": "string",
+ "title": "Outreach Title",
+ "description": "The title of the outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Squatter Signup",
+ "description": "Activity feed item to representing a contact signing up for the audience from a squatter page.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "squatter_signup",
+ "enum": [
+ "squatter_signup"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "outreach_id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "The outreach's unique id."
+ },
+ "outreach_title": {
+ "type": "string",
+ "title": "Outreach Title",
+ "description": "The title of the outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Website Signup",
+ "description": "Activity feed item to representing a contact signing up for the contact through a website page.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "website_signup",
+ "enum": [
+ "website_signup"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "outreach_id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "The outreach's unique id."
+ },
+ "outreach_title": {
+ "type": "string",
+ "title": "Outreach Title",
+ "description": "The title of the outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Landing Page Signup",
+ "description": "Activity feed item to representing a contact signing up for the list via a landing page.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "landing_page_signup",
+ "enum": [
+ "landing_page_signup"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "outreach_id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "The outreach's unique id."
+ },
+ "outreach_title": {
+ "type": "string",
+ "title": "Outreach Title",
+ "description": "The title of the outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Signup",
+ "description": "Activity feed item to representing a contact signing up for the list via a ecommerce store.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "ecommerce_signup",
+ "enum": [
+ "ecommerce_signup"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "store_name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Generic Signup",
+ "description": "Activity feed item that represents a contact signing up for the audience via a generic some generic method (specifically, one we can't link to).",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "generic_signup",
+ "enum": [
+ "generic_signup"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "signup_category": {
+ "type": "string",
+ "title": "Signup Category",
+ "description": "How was this user added to the list."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Order",
+ "description": "Activity feed item that represents an order.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "order",
+ "enum": [
+ "order"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "outreach_id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "The outreach's unique id."
+ },
+ "outreach_type": {
+ "type": "string",
+ "title": "Outreach Type",
+ "description": "The type of outreach that triggered the event."
+ },
+ "outreach_title": {
+ "type": "string",
+ "title": "Outreach Title",
+ "description": "The title of the outreach."
+ },
+ "order_id": {
+ "type": "string",
+ "title": "Order ID",
+ "description": "The unique order id."
+ },
+ "order_total": {
+ "type": "string",
+ "title": "Order Total",
+ "description": "The order total formatted as a string."
+ },
+ "order_items": {
+ "type": "array",
+ "title": "Order Items",
+ "description": "An array of items that have been ordered.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "store_name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store for an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The order URL."
+ },
+ "integration_platform": {
+ "type": "string",
+ "title": "Integration Platform",
+ "description": "The name of the integration platform this order originated through."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Contact Activity Event",
+ "description": "Activity feed item that represents a generic event.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "event",
+ "enum": [
+ "event"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "event_name": {
+ "type": "string",
+ "title": "Event Name",
+ "description": "The name of the event."
+ },
+ "event_properties": {
+ "type": "array",
+ "title": "Event Properties",
+ "items": {
+ "x-skip-validation": true,
+ "type": "string"
+ },
+ "description": "An arbitrary datastore containing properties for the given event."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey response",
+ "description": "Represents when a contact completes and submits a survey",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "survey_response",
+ "enum": [
+ "survey_response"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "survey_id": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The survey's unique id."
+ },
+ "survey_title": {
+ "type": "string",
+ "title": "Survey Title",
+ "description": "The title of the survey."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "SMS Bulk Sent",
+ "description": "Activity feed item representing an SMS campaign sent to the contact.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "sms_bulk_sent",
+ "enum": [
+ "sms_bulk_sent"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign's unique id."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the SMS campaign."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Inbox Thread",
+ "description": "Activity feed item representing a thread located in Inbox.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "inbox_thread",
+ "enum": [
+ "inbox_thread"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "id": {
+ "type": "string",
+ "title": "Thread ID",
+ "description": "The ID of the thread."
+ },
+ "thread_subject": {
+ "type": "string",
+ "title": "Thread Subject",
+ "description": "The subject of the thread."
+ },
+ "thread_url": {
+ "type": "string",
+ "title": "Thread URL",
+ "description": "The url of the thread."
+ },
+ "thread_direction": {
+ "type": "string",
+ "title": "Thread Direction",
+ "description": "The direction of the message noting if it is outbound or inbound.",
+ "enum": [
+ "INBOUND",
+ "OUTBOUND"
+ ]
+ },
+ "thread_author": {
+ "type": "string",
+ "title": "Thread Author",
+ "description": "The author of the thread."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "QBO Payment Link",
+ "description": "Activity feed item representing a payment link from QBO.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "qbo_payment_link",
+ "enum": [
+ "qbo_payment_link"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "id": {
+ "type": "string",
+ "title": "id",
+ "description": "The QuickBooks payment link id."
+ },
+ "qbo_payment_external_id": {
+ "type": "string",
+ "title": "QBO Payment External ID",
+ "description": "The external QuickBooks payment id."
+ },
+ "integration_platform": {
+ "type": "string",
+ "title": "Integration Platform",
+ "description": "The platform Mailchimp is integrated with.",
+ "enum": [
+ "quickbooks"
+ ]
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Video Call Transcripts",
+ "description": "Activity feed item representing a video call transcript.",
+ "properties": {
+ "activity_type": {
+ "type": "string",
+ "description": "The type of event activity.",
+ "x-value": "video_call_transcripts",
+ "enum": [
+ "video_call_transcripts"
+ ]
+ },
+ "created_at_timestamp": {
+ "type": "string",
+ "title": "Created At Timestamp",
+ "format": "date-time",
+ "description": "The created at timestamp in ISO8601."
+ },
+ "id": {
+ "type": "string",
+ "title": "id",
+ "description": "The id for video call transcripts."
+ },
+ "scheduled_meeting_start_timestamp": {
+ "type": "string",
+ "title": "Scheduled Meeting Start Timestamp",
+ "format": "date-time",
+ "description": "The Scheduled Meeting Start timestamp in ISO8601."
+ },
+ "expire_at_timestamp": {
+ "type": "string",
+ "title": "Expire At Timestamp",
+ "format": "date-time",
+ "description": "The Expire At timestamp in ISO8601."
+ }
+ }
+ }
+ ]
+ }
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_member_activity_feed",
+ "methodNameCamel": "getListMemberActivityFeed"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/tags": {
+ "get": {
+ "summary": "List member tags",
+ "description": "Get the tags on a list member.",
+ "operationId": "getListMemberTags",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Collection of Tags",
+ "description": "A list of tags assigned to a list member.",
+ "properties": {
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "A list of tags assigned to the list member.",
+ "readOnly": false,
+ "items": {
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The unique id for the tag.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag."
+ },
+ "date_added": {
+ "type": "string",
+ "title": "Date Added",
+ "description": "The date and time the tag was added to the list member in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_member_tags",
+ "methodNameCamel": "getListMemberTags"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add or remove member tags",
+ "description": "Add or remove tags from a list member. If a tag that does not exist is passed in and set as 'active', a new tag will be created.",
+ "operationId": "postListMemberTags",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_list_member_tags",
+ "methodNameCamel": "updateListMemberTags"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Member Tags",
+ "description": "A list of tags assigned to a list member.",
+ "required": [
+ "tags"
+ ],
+ "properties": {
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "A list of tags assigned to the list member.",
+ "items": {
+ "type": "object",
+ "title": "Member Tag",
+ "description": "Add or remove tags on a member by declaring a tag either active or inactive on a member.",
+ "required": [
+ "name",
+ "status"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status for the tag on the member, pass in active to add a tag or inactive to remove it.",
+ "enum": [
+ "inactive",
+ "active"
+ ]
+ }
+ }
+ }
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "When is_syncing is true, automations based on the tags in the request will not fire"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/events": {
+ "get": {
+ "summary": "List member events",
+ "description": "Get events for a contact.",
+ "operationId": "getListsIdMembersIdEvents",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Collection of Events",
+ "description": "A collection of events for a given contact",
+ "properties": {
+ "events": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Event",
+ "description": "A specific event for a contact.",
+ "properties": {
+ "occurred_at": {
+ "type": "string",
+ "title": "Occurred Time",
+ "description": "The date and time the event occurred in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Event Name",
+ "description": "The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length"
+ },
+ "properties": {
+ "type": "object",
+ "title": "Properties",
+ "description": "An optional list of properties",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "title": "Events",
+ "description": "An array of objects, each representing an event."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_member_events",
+ "methodNameCamel": "getListMemberEvents"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add event",
+ "description": "Add an event for a list member.",
+ "operationId": "postListMemberEvents",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_list_member_event",
+ "methodNameCamel": "createListMemberEvent"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Events",
+ "description": "A new event for a specific list member",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Event Name",
+ "description": "The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length"
+ },
+ "properties": {
+ "type": "object",
+ "title": "Properties",
+ "description": "An optional list of properties",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Events created with the is_syncing value set to `true` will not trigger automations."
+ },
+ "occurred_at": {
+ "type": "string",
+ "title": "Occurred Time",
+ "description": "The date and time the event occurred in ISO 8601 format.",
+ "format": "date-time"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/goals": {
+ "get": {
+ "summary": "List member goal events",
+ "description": "Get the last 50 Goal events for a member on a specific list.",
+ "operationId": "getListsIdMembersIdGoals",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Collection of Member Activity Events",
+ "description": "The last 50 Goal events for a member on a specific list.",
+ "properties": {
+ "goals": {
+ "type": "array",
+ "title": "Goal Activity",
+ "description": "The last 50 Goal events triggered by a member.",
+ "items": {
+ "type": "object",
+ "title": "Goal",
+ "description": "A single instance of a goal activity.",
+ "properties": {
+ "goal_id": {
+ "type": "integer",
+ "title": "Goal ID",
+ "description": "The id for a Goal event."
+ },
+ "event": {
+ "type": "string",
+ "title": "Event Name",
+ "description": "The name/type of Goal event triggered."
+ },
+ "last_visited_at": {
+ "type": "string",
+ "title": "Last Visit Date",
+ "description": "The date and time the user last triggered the Goal event in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "data": {
+ "type": "string",
+ "title": "Additional Data",
+ "description": "Any extra data passed with the Goal event."
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "getListMemberGoals",
+ "methodNameCamel": "getListMemberGoals"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/notes": {
+ "get": {
+ "summary": "List recent member notes",
+ "description": "Get recent notes for a specific list member.",
+ "operationId": "getListsIdMembersIdNotes",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns notes sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "created_at",
+ "updated_at",
+ "note_id"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Collection of Notes",
+ "description": "The last 10 notes for a specific list member, based on date created.",
+ "properties": {
+ "notes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Member Notes",
+ "description": "A specific note for a specific member.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated Time",
+ "description": "The date and time the note was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `email_id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Notes",
+ "description": "An array of objects, each representing a note resource."
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_member_notes",
+ "methodNameCamel": "getListMemberNotes"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add member note",
+ "description": "Add a new note for a specific subscriber.",
+ "operationId": "postListsIdMembersIdNotes",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Member Notes",
+ "description": "A specific note for a specific member.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated Time",
+ "description": "The date and time the note was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `email_id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_list_member_note",
+ "methodNameCamel": "createListMemberNote"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Member Notes",
+ "description": "A specific note for a specific member.",
+ "properties": {
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}": {
+ "get": {
+ "summary": "Get member note",
+ "description": "Get a specific note for a specific list member.",
+ "operationId": "getListsIdMembersIdNotesId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "note_id",
+ "x-title": "Note ID",
+ "in": "path",
+ "description": "The id for the note.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Member Notes",
+ "description": "A specific note for a specific member.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated Time",
+ "description": "The date and time the note was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `email_id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_member_note",
+ "methodNameCamel": "getListMemberNote"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update note",
+ "description": "Update a specific note for a specific list member.",
+ "operationId": "patchListsIdMembersIdNotesId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "note_id",
+ "x-title": "Note ID",
+ "in": "path",
+ "description": "The id for the note.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Member Notes",
+ "description": "A specific note for a specific member.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated Time",
+ "description": "The date and time the note was last updated in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `email_id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_list_member_note",
+ "methodNameCamel": "updateListMemberNote"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Member Notes",
+ "description": "A specific note for a specific member.",
+ "properties": {
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete note",
+ "description": "Delete a specific note for a specific list member.",
+ "operationId": "deleteListsIdMembersIdNotesId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ {
+ "name": "note_id",
+ "x-title": "Note ID",
+ "in": "path",
+ "description": "The id for the note.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_list_member_note",
+ "methodNameCamel": "deleteListMemberNote"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/members/{subscriber_hash}/actions/delete-permanent": {
+ "post": {
+ "summary": "Delete list member",
+ "description": "Delete all personally identifiable information related to a list member, and remove them from a list. This will make it impossible to re-import the list member.",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_list_member_permanent",
+ "methodNameCamel": "deleteListMemberPermanent"
+ },
+ "operationId": "postListsIdMembersHashActionsDeletePermanent",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/merge-fields": {
+ "get": {
+ "summary": "List merge fields",
+ "description": "Get a list of all merge fields for an audience.",
+ "operationId": "getListsIdMergeFields",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "type",
+ "x-title": "Merge Type",
+ "in": "query",
+ "required": false,
+ "description": "The merge field type.",
+ "type": "string"
+ },
+ {
+ "name": "required",
+ "x-title": "Required",
+ "in": "query",
+ "required": false,
+ "description": "Whether it's a required merge field.",
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Collection of Merge Fields",
+ "description": "The [merge fields](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "merge_fields": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "merge_id": {
+ "type": "integer",
+ "title": "Merge Field ID",
+ "description": "An unchanging id for the merge field.",
+ "readOnly": true
+ },
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "readOnly": true
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "The boolean value if the merge field is required."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from.",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "First Choice",
+ "Second Choice",
+ "Third Choice"
+ ]
+ },
+ "size": {
+ "type": "integer",
+ "title": "Text Field Size",
+ "description": "In a text field, the default length of the text field.",
+ "readOnly": true
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID that identifies this merge field's audience'.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Merge Fields",
+ "description": "An array of objects, each representing a merge field resource."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_merge_fields",
+ "methodNameCamel": "getListMergeFields"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add merge field",
+ "description": "Add a new merge field for a specific audience.",
+ "operationId": "postListsIdMergeFields",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "merge_id": {
+ "type": "integer",
+ "title": "Merge Field ID",
+ "description": "An unchanging id for the merge field.",
+ "readOnly": true
+ },
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "readOnly": true
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "The boolean value if the merge field is required."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from.",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "First Choice",
+ "Second Choice",
+ "Third Choice"
+ ]
+ },
+ "size": {
+ "type": "integer",
+ "title": "Text Field Size",
+ "description": "In a text field, the default length of the text field.",
+ "readOnly": true
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID that identifies this merge field's audience'.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_list_merge_field",
+ "methodNameCamel": "addListMergeField"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "required": [
+ "name",
+ "type"
+ ],
+ "properties": {
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ]
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from.",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "First Choice",
+ "Second Choice",
+ "Third Choice"
+ ]
+ },
+ "size": {
+ "type": "integer",
+ "title": "Text Field Size",
+ "description": "In a text field, the default length of the text field."
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/merge-fields/{merge_id}": {
+ "get": {
+ "summary": "Get merge field",
+ "description": "Get information about a specific merge field.",
+ "operationId": "getListsIdMergeFieldsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "merge_id",
+ "x-title": "Merge ID",
+ "description": "The id for the merge field.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "merge_id": {
+ "type": "integer",
+ "title": "Merge Field ID",
+ "description": "An unchanging id for the merge field.",
+ "readOnly": true
+ },
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "readOnly": true
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "The boolean value if the merge field is required."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from.",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "First Choice",
+ "Second Choice",
+ "Third Choice"
+ ]
+ },
+ "size": {
+ "type": "integer",
+ "title": "Text Field Size",
+ "description": "In a text field, the default length of the text field.",
+ "readOnly": true
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID that identifies this merge field's audience'.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_merge_field",
+ "methodNameCamel": "getListMergeField"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update merge field",
+ "description": "Update a specific merge field.",
+ "operationId": "patchListsIdMergeFieldsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "merge_id",
+ "x-title": "Merge ID",
+ "description": "The id for the merge field.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "merge_id": {
+ "type": "integer",
+ "title": "Merge Field ID",
+ "description": "An unchanging id for the merge field.",
+ "readOnly": true
+ },
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "readOnly": true
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "The boolean value if the merge field is required."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from.",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "First Choice",
+ "Second Choice",
+ "Third Choice"
+ ]
+ },
+ "size": {
+ "type": "integer",
+ "title": "Text Field Size",
+ "description": "In a text field, the default length of the text field.",
+ "readOnly": true
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID that identifies this merge field's audience'.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_list_merge_field",
+ "methodNameCamel": "updateListMergeField"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "tag": {
+ "type": "string",
+ "title": "Merge Tag",
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "type": "string",
+ "title": "Merge Field Name",
+ "description": "The name of the merge field (audience field)."
+ },
+ "required": {
+ "type": "boolean",
+ "title": "Required",
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "type": "string",
+ "title": "Default Value",
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "type": "boolean",
+ "title": "Merge Field Public Status",
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "type": "integer",
+ "title": "Display Order",
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "type": "object",
+ "title": "Merge Field Options",
+ "description": "Extra options for some merge field types.",
+ "properties": {
+ "default_country": {
+ "type": "integer",
+ "title": "Default Country",
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "type": "string",
+ "title": "Phone Type",
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "type": "string",
+ "title": "Date Type",
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "type": "array",
+ "title": "Choices",
+ "description": "In a radio or dropdown non-group field, the available options for members to pick from.",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "First Choice",
+ "Second Choice",
+ "Third Choice"
+ ]
+ }
+ }
+ },
+ "help_text": {
+ "type": "string",
+ "title": "Merge Field Help Text",
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete merge field",
+ "description": "Delete a specific merge field.",
+ "operationId": "deleteListsIdMergeFieldsId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "merge_id",
+ "x-title": "Merge ID",
+ "description": "The id for the merge field.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_list_merge_field",
+ "methodNameCamel": "deleteListMergeField"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/webhooks": {
+ "get": {
+ "summary": "List webhooks",
+ "description": "Get information about all webhooks for a specific list.",
+ "operationId": "getListsIdWebhooks",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Webhooks",
+ "description": "Manage webhooks for a specific list.",
+ "properties": {
+ "webhooks": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "List Webhooks",
+ "description": "Webhook configured for the given list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Unique ID",
+ "description": "An string that uniquely identifies this webhook.",
+ "readOnly": true,
+ "example": "5d9a5e3f7b"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": true,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true,
+ "example": "4ca5becb8d"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Webhooks",
+ "description": "An array of objects, each representing a specific list member."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_webhooks",
+ "methodNameCamel": "getListWebhooks"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add webhook",
+ "description": "Create a new webhook for a specific list.",
+ "operationId": "postListsIdWebhooks",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Webhooks",
+ "description": "Webhook configured for the given list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Unique ID",
+ "description": "An string that uniquely identifies this webhook.",
+ "readOnly": true,
+ "example": "5d9a5e3f7b"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": true,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true,
+ "example": "4ca5becb8d"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_list_webhook",
+ "methodNameCamel": "createListWebhook"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Add Webhook",
+ "description": "Configure a webhook for the given list.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/webhooks/{webhook_id}": {
+ "get": {
+ "summary": "Get webhook info",
+ "description": "Get information about a specific webhook.",
+ "operationId": "getListsIdWebhooksId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "webhook_id",
+ "in": "path",
+ "description": "The webhook's id.",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Webhooks",
+ "description": "Webhook configured for the given list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Unique ID",
+ "description": "An string that uniquely identifies this webhook.",
+ "readOnly": true,
+ "example": "5d9a5e3f7b"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": true,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true,
+ "example": "4ca5becb8d"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_webhook",
+ "methodNameCamel": "getListWebhook"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "delete": {
+ "summary": "Delete webhook",
+ "description": "Delete a specific webhook in a list.",
+ "operationId": "deleteListsIdWebhooksId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "webhook_id",
+ "in": "path",
+ "description": "The webhook's id.",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_list_webhook",
+ "methodNameCamel": "deleteListWebhook"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update webhook",
+ "description": "Update the settings for an existing webhook.",
+ "operationId": "patchListsIdWebhooksId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "webhook_id",
+ "in": "path",
+ "description": "The webhook's id.",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Webhooks",
+ "description": "Webhook configured for the given list.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Unique ID",
+ "description": "An string that uniquely identifies this webhook.",
+ "readOnly": true,
+ "example": "5d9a5e3f7b"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "readOnly": true,
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "readOnly": true,
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true,
+ "example": "4ca5becb8d"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_list_webhook",
+ "methodNameCamel": "updateListWebhook"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Add Webhook",
+ "description": "Configure a webhook for the given list.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "A valid URL for the Webhook.",
+ "example": "http://yourdomain.com/webhook"
+ },
+ "events": {
+ "type": "object",
+ "title": "Events",
+ "description": "The events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "subscribe": {
+ "type": "boolean",
+ "title": "Subscribed",
+ "description": "Whether the webhook is triggered when a list subscriber is added.",
+ "example": true
+ },
+ "unsubscribe": {
+ "type": "boolean",
+ "title": "Unsubscribed",
+ "description": "Whether the webhook is triggered when a list member unsubscribes.",
+ "example": true
+ },
+ "profile": {
+ "type": "boolean",
+ "title": "Profile Updated",
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated.",
+ "example": true
+ },
+ "cleaned": {
+ "type": "boolean",
+ "title": "Cleaned",
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list.",
+ "example": true
+ },
+ "upemail": {
+ "type": "boolean",
+ "title": "Email Address Updated",
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed.",
+ "example": true
+ },
+ "campaign": {
+ "type": "boolean",
+ "title": "Campaign Sent",
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled.",
+ "example": true
+ }
+ }
+ },
+ "sources": {
+ "type": "object",
+ "title": "Sources",
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.",
+ "properties": {
+ "user": {
+ "type": "boolean",
+ "title": "User",
+ "description": "Whether the webhook is triggered by subscriber-initiated actions.",
+ "example": true
+ },
+ "admin": {
+ "type": "boolean",
+ "title": "Admin",
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.",
+ "example": true
+ },
+ "api": {
+ "type": "boolean",
+ "title": "API",
+ "description": "Whether the webhook is triggered by actions initiated via the API.",
+ "example": true
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/signup-forms": {
+ "get": {
+ "summary": "List signup forms",
+ "description": "Get signup forms for a specific list.",
+ "operationId": "getListsIdSignupForms",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Signup Forms",
+ "description": "List Signup Forms.",
+ "properties": {
+ "signup_forms": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Signup Form",
+ "description": "List signup form.",
+ "properties": {
+ "header": {
+ "type": "object",
+ "title": "Signup form header options",
+ "description": "Options for customizing your signup form header.",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Header Image URL",
+ "description": "Header image URL.",
+ "example": "http://gallery.mailchimp.com/332310cb9a420a9e7fea2858a/images/2491208c-9458-4834-a708-fef4ee736472.png"
+ },
+ "text": {
+ "type": "string",
+ "title": "Header Text",
+ "description": "Header text.",
+ "example": "Header Text goes here"
+ },
+ "image_width": {
+ "type": "string",
+ "title": "Image width",
+ "description": "Image width, in pixels.",
+ "example": "800"
+ },
+ "image_height": {
+ "type": "string",
+ "title": "Image height",
+ "description": "Image height, in pixels.",
+ "example": "200"
+ },
+ "image_alt": {
+ "type": "string",
+ "title": "Image Alt",
+ "description": "Alt text for the image.",
+ "example": "This is an image"
+ },
+ "image_link": {
+ "type": "string",
+ "title": "Image Link",
+ "description": "The URL that the header image will link to.",
+ "example": "gotothisimage.com"
+ },
+ "image_align": {
+ "type": "string",
+ "title": "Image align",
+ "description": "Image alignment.",
+ "enum": [
+ "none",
+ "left",
+ "center",
+ "right"
+ ],
+ "example": "center"
+ },
+ "image_border_width": {
+ "type": "string",
+ "title": "Image border width",
+ "description": "Image border width.",
+ "example": "2"
+ },
+ "image_border_style": {
+ "type": "string",
+ "title": "Image border style",
+ "description": "Image border style.",
+ "enum": [
+ "none",
+ "solid",
+ "dotted",
+ "dashed",
+ "double",
+ "groove",
+ "outset",
+ "inset",
+ "ridge"
+ ],
+ "example": "solid"
+ },
+ "image_border_color": {
+ "type": "string",
+ "title": "Image border color",
+ "description": "Image border color.",
+ "example": "#896d6d"
+ },
+ "image_target": {
+ "type": "string",
+ "title": "Image target",
+ "description": "Image link target.",
+ "enum": [
+ "_blank",
+ "null"
+ ],
+ "example": "_blank"
+ }
+ }
+ },
+ "contents": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Collection of Content for List Signup Forms",
+ "description": "Collection of Content for List Signup Forms.",
+ "properties": {
+ "section": {
+ "type": "string",
+ "title": "Content Section Name",
+ "description": "The content section name.",
+ "enum": [
+ "signup_message",
+ "unsub_message",
+ "signup_thank_you_title"
+ ],
+ "example": "signup_message"
+ },
+ "value": {
+ "type": "string",
+ "title": "Content Section Value",
+ "description": "The content section text.",
+ "example": "Signup message goes here"
+ }
+ }
+ },
+ "title": "Signup form body content",
+ "description": "The signup form body content."
+ },
+ "styles": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Collection of Element style for List Signup Forms",
+ "description": "Collection of Element style for List Signup Forms.",
+ "properties": {
+ "selector": {
+ "type": "string",
+ "title": "Selector",
+ "description": "A string that identifies the element selector.",
+ "enum": [
+ "page_background",
+ "page_header",
+ "page_outer_wrapper",
+ "body_background",
+ "body_link_style",
+ "forms_buttons",
+ "forms_buttons_hovered",
+ "forms_field_label",
+ "forms_field_text",
+ "forms_required",
+ "forms_required_legend",
+ "forms_help_text",
+ "forms_errors",
+ "monkey_rewards_badge"
+ ],
+ "example": "page_background"
+ },
+ "options": {
+ "type": "array",
+ "title": "Options",
+ "description": "A collection of options for a selector.",
+ "items": {
+ "type": "object",
+ "title": "An option for Signup Form Styles",
+ "description": "An option for Signup Form Styles.",
+ "properties": {
+ "property": {
+ "type": "string",
+ "title": "Property",
+ "description": "A string that identifies the property.",
+ "example": "background-color"
+ },
+ "value": {
+ "type": "string",
+ "title": "Value",
+ "description": "A string that identifies value of the property.",
+ "example": "#111111"
+ }
+ }
+ }
+ }
+ }
+ },
+ "title": "Signup Form element style",
+ "description": "An array of objects, each representing an element style for the signup form."
+ },
+ "signup_form_url": {
+ "type": "string",
+ "title": "Signup form URL",
+ "description": "Signup form URL."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The signup form's list id.",
+ "readOnly": true,
+ "example": "4ca5becb8d"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "List Signup Form",
+ "description": "List signup form."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_signup_forms",
+ "methodNameCamel": "getListSignupForms"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Customize signup form",
+ "description": "Customize a list's default signup form.",
+ "operationId": "postListsIdSignupForms",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Signup Form",
+ "description": "List signup form.",
+ "properties": {
+ "header": {
+ "type": "object",
+ "title": "Signup form header options",
+ "description": "Options for customizing your signup form header.",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Header Image URL",
+ "description": "Header image URL.",
+ "example": "http://gallery.mailchimp.com/332310cb9a420a9e7fea2858a/images/2491208c-9458-4834-a708-fef4ee736472.png"
+ },
+ "text": {
+ "type": "string",
+ "title": "Header Text",
+ "description": "Header text.",
+ "example": "Header Text goes here"
+ },
+ "image_width": {
+ "type": "string",
+ "title": "Image width",
+ "description": "Image width, in pixels.",
+ "example": "800"
+ },
+ "image_height": {
+ "type": "string",
+ "title": "Image height",
+ "description": "Image height, in pixels.",
+ "example": "200"
+ },
+ "image_alt": {
+ "type": "string",
+ "title": "Image Alt",
+ "description": "Alt text for the image.",
+ "example": "This is an image"
+ },
+ "image_link": {
+ "type": "string",
+ "title": "Image Link",
+ "description": "The URL that the header image will link to.",
+ "example": "gotothisimage.com"
+ },
+ "image_align": {
+ "type": "string",
+ "title": "Image align",
+ "description": "Image alignment.",
+ "enum": [
+ "none",
+ "left",
+ "center",
+ "right"
+ ],
+ "example": "center"
+ },
+ "image_border_width": {
+ "type": "string",
+ "title": "Image border width",
+ "description": "Image border width.",
+ "example": "2"
+ },
+ "image_border_style": {
+ "type": "string",
+ "title": "Image border style",
+ "description": "Image border style.",
+ "enum": [
+ "none",
+ "solid",
+ "dotted",
+ "dashed",
+ "double",
+ "groove",
+ "outset",
+ "inset",
+ "ridge"
+ ],
+ "example": "solid"
+ },
+ "image_border_color": {
+ "type": "string",
+ "title": "Image border color",
+ "description": "Image border color.",
+ "example": "#896d6d"
+ },
+ "image_target": {
+ "type": "string",
+ "title": "Image target",
+ "description": "Image link target.",
+ "enum": [
+ "_blank",
+ "null"
+ ],
+ "example": "_blank"
+ }
+ }
+ },
+ "contents": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Collection of Content for List Signup Forms",
+ "description": "Collection of Content for List Signup Forms.",
+ "properties": {
+ "section": {
+ "type": "string",
+ "title": "Content Section Name",
+ "description": "The content section name.",
+ "enum": [
+ "signup_message",
+ "unsub_message",
+ "signup_thank_you_title"
+ ],
+ "example": "signup_message"
+ },
+ "value": {
+ "type": "string",
+ "title": "Content Section Value",
+ "description": "The content section text.",
+ "example": "Signup message goes here"
+ }
+ }
+ },
+ "title": "Signup form body content",
+ "description": "The signup form body content."
+ },
+ "styles": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Collection of Element style for List Signup Forms",
+ "description": "Collection of Element style for List Signup Forms.",
+ "properties": {
+ "selector": {
+ "type": "string",
+ "title": "Selector",
+ "description": "A string that identifies the element selector.",
+ "enum": [
+ "page_background",
+ "page_header",
+ "page_outer_wrapper",
+ "body_background",
+ "body_link_style",
+ "forms_buttons",
+ "forms_buttons_hovered",
+ "forms_field_label",
+ "forms_field_text",
+ "forms_required",
+ "forms_required_legend",
+ "forms_help_text",
+ "forms_errors",
+ "monkey_rewards_badge"
+ ],
+ "example": "page_background"
+ },
+ "options": {
+ "type": "array",
+ "title": "Options",
+ "description": "A collection of options for a selector.",
+ "items": {
+ "type": "object",
+ "title": "An option for Signup Form Styles",
+ "description": "An option for Signup Form Styles.",
+ "properties": {
+ "property": {
+ "type": "string",
+ "title": "Property",
+ "description": "A string that identifies the property.",
+ "example": "background-color"
+ },
+ "value": {
+ "type": "string",
+ "title": "Value",
+ "description": "A string that identifies value of the property.",
+ "example": "#111111"
+ }
+ }
+ }
+ }
+ }
+ },
+ "title": "Signup Form element style",
+ "description": "An array of objects, each representing an element style for the signup form."
+ },
+ "signup_form_url": {
+ "type": "string",
+ "title": "Signup form URL",
+ "description": "Signup form URL."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The signup form's list id.",
+ "readOnly": true,
+ "example": "4ca5becb8d"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_list_signup_form",
+ "methodNameCamel": "updateListSignupForm"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Signup Form",
+ "description": "List signup form.",
+ "properties": {
+ "header": {
+ "type": "object",
+ "title": "Signup form header options",
+ "description": "Options for customizing your signup form header.",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Header Image URL",
+ "description": "Header image URL.",
+ "example": "http://gallery.mailchimp.com/332310cb9a420a9e7fea2858a/images/2491208c-9458-4834-a708-fef4ee736472.png"
+ },
+ "text": {
+ "type": "string",
+ "title": "Header Text",
+ "description": "Header text.",
+ "example": "Header Text goes here"
+ },
+ "image_width": {
+ "type": "string",
+ "title": "Image width",
+ "description": "Image width, in pixels.",
+ "example": "800"
+ },
+ "image_height": {
+ "type": "string",
+ "title": "Image height",
+ "description": "Image height, in pixels.",
+ "example": "200"
+ },
+ "image_alt": {
+ "type": "string",
+ "title": "Image Alt",
+ "description": "Alt text for the image.",
+ "example": "This is an image"
+ },
+ "image_link": {
+ "type": "string",
+ "title": "Image Link",
+ "description": "The URL that the header image will link to.",
+ "example": "gotothisimage.com"
+ },
+ "image_align": {
+ "type": "string",
+ "title": "Image align",
+ "description": "Image alignment.",
+ "enum": [
+ "none",
+ "left",
+ "center",
+ "right"
+ ],
+ "example": "center"
+ },
+ "image_border_width": {
+ "type": "string",
+ "title": "Image border width",
+ "description": "Image border width.",
+ "example": "2"
+ },
+ "image_border_style": {
+ "type": "string",
+ "title": "Image border style",
+ "description": "Image border style.",
+ "enum": [
+ "none",
+ "solid",
+ "dotted",
+ "dashed",
+ "double",
+ "groove",
+ "outset",
+ "inset",
+ "ridge"
+ ],
+ "example": "solid"
+ },
+ "image_border_color": {
+ "type": "string",
+ "title": "Image border color",
+ "description": "Image border color.",
+ "example": "#896d6d"
+ },
+ "image_target": {
+ "type": "string",
+ "title": "Image target",
+ "description": "Image link target.",
+ "enum": [
+ "_blank",
+ "null"
+ ],
+ "example": "_blank"
+ }
+ }
+ },
+ "contents": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Collection of Content for List Signup Forms",
+ "description": "Collection of Content for List Signup Forms.",
+ "properties": {
+ "section": {
+ "type": "string",
+ "title": "Content Section Name",
+ "description": "The content section name.",
+ "enum": [
+ "signup_message",
+ "unsub_message",
+ "signup_thank_you_title"
+ ],
+ "example": "signup_message"
+ },
+ "value": {
+ "type": "string",
+ "title": "Content Section Value",
+ "description": "The content section text.",
+ "example": "Signup message goes here"
+ }
+ }
+ },
+ "title": "Signup form body content",
+ "description": "The signup form body content."
+ },
+ "styles": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Collection of Element style for List Signup Forms",
+ "description": "Collection of Element style for List Signup Forms.",
+ "properties": {
+ "selector": {
+ "type": "string",
+ "title": "Selector",
+ "description": "A string that identifies the element selector.",
+ "enum": [
+ "page_background",
+ "page_header",
+ "page_outer_wrapper",
+ "body_background",
+ "body_link_style",
+ "forms_buttons",
+ "forms_buttons_hovered",
+ "forms_field_label",
+ "forms_field_text",
+ "forms_required",
+ "forms_required_legend",
+ "forms_help_text",
+ "forms_errors",
+ "monkey_rewards_badge"
+ ],
+ "example": "page_background"
+ },
+ "options": {
+ "type": "array",
+ "title": "Options",
+ "description": "A collection of options for a selector.",
+ "items": {
+ "type": "object",
+ "title": "An option for Signup Form Styles",
+ "description": "An option for Signup Form Styles.",
+ "properties": {
+ "property": {
+ "type": "string",
+ "title": "Property",
+ "description": "A string that identifies the property.",
+ "example": "background-color"
+ },
+ "value": {
+ "type": "string",
+ "title": "Value",
+ "description": "A string that identifies value of the property.",
+ "example": "#111111"
+ }
+ }
+ }
+ }
+ }
+ },
+ "title": "Signup Form element style",
+ "description": "An array of objects, each representing an element style for the signup form."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/lists/{list_id}/locations": {
+ "get": {
+ "summary": "List locations",
+ "description": "Get the locations (countries) that the list's subscribers have been tagged to based on geocoding their IP address.",
+ "operationId": "getListsIdLocations",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "List Locations",
+ "description": "A summary of List's locations.",
+ "properties": {
+ "locations": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "List Location",
+ "properties": {
+ "country": {
+ "type": "string",
+ "title": "Country Name",
+ "description": "The name of the country.",
+ "readOnly": true
+ },
+ "cc": {
+ "type": "string",
+ "title": "cc",
+ "description": "The ISO 3166 2 digit country code.",
+ "readOnly": true
+ },
+ "percent": {
+ "type": "number",
+ "title": "percent",
+ "description": "The percent of subscribers in the country.",
+ "readOnly": true
+ },
+ "total": {
+ "type": "integer",
+ "title": "total",
+ "description": "The total number of subscribers in the country.",
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Locations",
+ "description": "An array of objects, each representing a list's top subscriber locations."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_list_locations",
+ "methodNameCamel": "getListLocations"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/surveys": {
+ "get": {
+ "summary": "Get information about all surveys for a list",
+ "description": "Get information about all available surveys for a specific list.",
+ "operationId": "getListsIdSurveys",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": ""
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all_surveys_for_list",
+ "methodNameCamel": "getAllSurveysForList"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/surveys/{survey_id}": {
+ "get": {
+ "summary": "Get survey",
+ "description": "Get details about a specific survey.",
+ "operationId": "getListsIdSurveysId",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": ""
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "lists"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey",
+ "methodNameCamel": "getSurvey"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/surveys/{survey_id}/actions/publish": {
+ "post": {
+ "summary": "Publish a Survey",
+ "description": "Publish a survey that is in draft, unpublished, or has been previously published and edited.",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Survey Published"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "Surveys"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "publish_survey",
+ "methodNameCamel": "publishSurvey"
+ },
+ "operationId": "postListsIdSurveysIdActionsPublish",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/surveys/{survey_id}/actions/unpublish": {
+ "post": {
+ "summary": "Unpublish a Survey",
+ "description": "Unpublish a survey that has been published.",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Survey Instance"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "Surveys"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "unpublish_survey",
+ "methodNameCamel": "unpublishSurvey"
+ },
+ "operationId": "postListsIdSurveysIdActionsUnpublish",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/lists/{list_id}/surveys/{survey_id}/actions/create-email": {
+ "post": {
+ "summary": "Create a Survey Campaign",
+ "description": "Utilize the List ID and Survey ID to generate a Campaign that links to your survey.",
+ "parameters": [
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "path",
+ "description": "The unique ID for the list.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Campaign Instance",
+ "schema": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent in ISO 8601 format.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together ('template', 'drag_and_drop', 'html', 'url').",
+ "readOnly": true
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "required": [
+ "list_id"
+ ],
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/save-and-manage-segments/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": true
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "required": [
+ "winner_criteria"
+ ],
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "required": [
+ "feed_url",
+ "frequency"
+ ],
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-details/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens and clicks.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "Surveys"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_email",
+ "methodNameCamel": "createEmail"
+ },
+ "operationId": "postListsIdSurveysIdActionsCreateEmail",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/landing-pages": {
+ "get": {
+ "description": "Get all landing pages.",
+ "operationId": "getAllLandingPages",
+ "parameters": [
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "created_at",
+ "updated_at"
+ ]
+ },
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Landing Pages Collection",
+ "schema": {
+ "type": "object",
+ "description": "A collection of landing pages.",
+ "properties": {
+ "landing_pages": {
+ "type": "array",
+ "description": "The landing pages on the account",
+ "items": {
+ "type": "object",
+ "title": "Landing Page",
+ "description": "A summary of an individual landing page's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Landing Page ID",
+ "description": "A string that uniquely identifies this landing page.",
+ "readOnly": true,
+ "example": "030092c2e1f0"
+ },
+ "name": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page.",
+ "readOnly": false
+ },
+ "title": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "readOnly": false
+ },
+ "description": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page.",
+ "readOnly": false
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Landing Page template_id",
+ "description": "The template_id of this landing page.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Landing Page status",
+ "description": "The status of this landing page.",
+ "enum": [
+ "published",
+ "unpublished",
+ "draft"
+ ],
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page.",
+ "example": "fde02ad86b",
+ "readOnly": false
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page.",
+ "readOnly": false
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Landing Page Web ID",
+ "description": "The ID used in the Mailchimp web application."
+ },
+ "created_by_source": {
+ "type": "string",
+ "title": "Created By Source",
+ "description": "Created by mobile or web",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "Published url",
+ "description": "The url of the published landing page.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The time this landing page was created.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "published_at": {
+ "type": "string",
+ "title": "Published at",
+ "description": "The time this landing page was published.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "unpublished_at": {
+ "type": "string",
+ "title": "Unpublished at",
+ "description": "The time this landing page was unpublished.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated_at",
+ "description": "The time this landing page was updated at.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Tracking Settings",
+ "description": "The tracking settings applied to this landing page.",
+ "properties": {
+ "track_with_mailchimp": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "enable_restricted_data_processing": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all",
+ "methodNameCamel": "getAll"
+ },
+ "summary": "List landing pages",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add landing page",
+ "description": "Create an unpublished and contentless Mailchimp landing page.",
+ "parameters": [
+ {
+ "in": "query",
+ "name": "use_default_list",
+ "x-title": "Use Default List",
+ "type": "boolean",
+ "required": false,
+ "description": "Will create the Landing Page using the account's Default List instead of requiring a list_id."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Landing Page",
+ "description": "A summary of an individual landing page's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Landing Page ID",
+ "description": "A string that uniquely identifies this landing page.",
+ "readOnly": true,
+ "example": "030092c2e1f0"
+ },
+ "name": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page.",
+ "readOnly": false
+ },
+ "title": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "readOnly": false
+ },
+ "description": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page.",
+ "readOnly": false
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Landing Page template_id",
+ "description": "The template_id of this landing page.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Landing Page status",
+ "description": "The status of this landing page.",
+ "enum": [
+ "published",
+ "unpublished",
+ "draft"
+ ],
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page.",
+ "example": "fde02ad86b",
+ "readOnly": false
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page.",
+ "readOnly": false
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Landing Page Web ID",
+ "description": "The ID used in the Mailchimp web application."
+ },
+ "created_by_source": {
+ "type": "string",
+ "title": "Created By Source",
+ "description": "Created by mobile or web",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "Published url",
+ "description": "The url of the published landing page.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The time this landing page was created.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "published_at": {
+ "type": "string",
+ "title": "Published at",
+ "description": "The time this landing page was published.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "unpublished_at": {
+ "type": "string",
+ "title": "Unpublished at",
+ "description": "The time this landing page was unpublished.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated_at",
+ "description": "The time this landing page was updated at.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Tracking Settings",
+ "description": "The tracking settings applied to this landing page.",
+ "properties": {
+ "track_with_mailchimp": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "enable_restricted_data_processing": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "operationId": "postAllLandingPages",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Landing Page",
+ "description": "A summary of an individual page's properties.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page."
+ },
+ "title": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "description": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page."
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page."
+ },
+ "type": {
+ "type": "string",
+ "title": "Landing Page Template Type",
+ "description": "The type of template the landing page has.",
+ "enum": [
+ "signup",
+ "product"
+ ],
+ "example": "signup"
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Landing Page template_id",
+ "description": "The template_id of this landing page.",
+ "example": 1001
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Tracking Settings",
+ "description": "The tracking settings applied to this landing page.",
+ "properties": {
+ "track_with_mailchimp": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "enable_restricted_data_processing": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/landing-pages/{page_id}": {
+ "get": {
+ "summary": "Get landing page info",
+ "description": "Get information about a specific page.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "page_id",
+ "x-title": "Landing Page unique ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the page."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Landing Pages Instance",
+ "schema": {
+ "type": "object",
+ "title": "Landing Page",
+ "description": "A summary of an individual landing page's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Landing Page ID",
+ "description": "A string that uniquely identifies this landing page.",
+ "readOnly": true,
+ "example": "030092c2e1f0"
+ },
+ "name": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page.",
+ "readOnly": false
+ },
+ "title": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "readOnly": false
+ },
+ "description": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page.",
+ "readOnly": false
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Landing Page template_id",
+ "description": "The template_id of this landing page.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Landing Page status",
+ "description": "The status of this landing page.",
+ "enum": [
+ "published",
+ "unpublished",
+ "draft"
+ ],
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page.",
+ "example": "fde02ad86b",
+ "readOnly": false
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page.",
+ "readOnly": false
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Landing Page Web ID",
+ "description": "The ID used in the Mailchimp web application."
+ },
+ "created_by_source": {
+ "type": "string",
+ "title": "Created By Source",
+ "description": "Created by mobile or web",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "Published url",
+ "description": "The url of the published landing page.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The time this landing page was created.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "published_at": {
+ "type": "string",
+ "title": "Published at",
+ "description": "The time this landing page was published.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "unpublished_at": {
+ "type": "string",
+ "title": "Unpublished at",
+ "description": "The time this landing page was unpublished.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated_at",
+ "description": "The time this landing page was updated at.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Tracking Settings",
+ "description": "The tracking settings applied to this landing page.",
+ "properties": {
+ "track_with_mailchimp": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "enable_restricted_data_processing": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_page",
+ "methodNameCamel": "getPage"
+ },
+ "operationId": "getLandingPageId",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update landing page",
+ "description": "Update a landing page.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "page_id",
+ "x-title": "Landing Page unique ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the page."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Landing Page",
+ "description": "A summary of an individual landing page's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Landing Page ID",
+ "description": "A string that uniquely identifies this landing page.",
+ "readOnly": true,
+ "example": "030092c2e1f0"
+ },
+ "name": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page.",
+ "readOnly": false
+ },
+ "title": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "readOnly": false
+ },
+ "description": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page.",
+ "readOnly": false
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Landing Page template_id",
+ "description": "The template_id of this landing page.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Landing Page status",
+ "description": "The status of this landing page.",
+ "enum": [
+ "published",
+ "unpublished",
+ "draft"
+ ],
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page.",
+ "example": "fde02ad86b",
+ "readOnly": false
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page.",
+ "readOnly": false
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Landing Page Web ID",
+ "description": "The ID used in the Mailchimp web application."
+ },
+ "created_by_source": {
+ "type": "string",
+ "title": "Created By Source",
+ "description": "Created by mobile or web",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "Published url",
+ "description": "The url of the published landing page.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created At",
+ "description": "The time this landing page was created.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "published_at": {
+ "type": "string",
+ "title": "Published at",
+ "description": "The time this landing page was published.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "unpublished_at": {
+ "type": "string",
+ "title": "Unpublished at",
+ "description": "The time this landing page was unpublished.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated_at",
+ "description": "The time this landing page was updated at.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Tracking Settings",
+ "description": "The tracking settings applied to this landing page.",
+ "properties": {
+ "track_with_mailchimp": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "enable_restricted_data_processing": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_page",
+ "methodNameCamel": "updatePage"
+ },
+ "operationId": "patchLandingPageId",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Landing Page",
+ "description": "A summary of an individual page's properties.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Landing Page Name",
+ "description": "The name of this landing page."
+ },
+ "title": {
+ "type": "string",
+ "title": "Landing Page title",
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "description": {
+ "type": "string",
+ "title": "Landing Page description",
+ "description": "The description of this landing page."
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The ID of the store associated with this landing page."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "Landing Page list id",
+ "description": "The list's ID associated with this landing page."
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Tracking Settings",
+ "description": "The tracking settings applied to this landing page.",
+ "properties": {
+ "track_with_mailchimp": {
+ "type": "boolean",
+ "title": "Track with Mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "enable_restricted_data_processing": {
+ "type": "boolean",
+ "title": "Enable restricted data processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete landing page",
+ "description": "Delete a landing page.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "page_id",
+ "x-title": "Landing Page unique ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the page."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_page",
+ "methodNameCamel": "deletePage"
+ },
+ "operationId": "deleteLandingPageId",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/landing-pages/{page_id}/actions/publish": {
+ "post": {
+ "summary": "Publish landing page",
+ "description": "Publish a landing page that is in draft, unpublished, or has been previously published and edited.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "page_id",
+ "x-title": "Landing Page unique ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the page."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "publish_page",
+ "methodNameCamel": "publishPage"
+ },
+ "operationId": "postLandingPageIdActionsPublish",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/landing-pages/{page_id}/actions/unpublish": {
+ "post": {
+ "summary": "Unpublish landing page",
+ "description": "Unpublish a landing page that is in draft or has been published.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "page_id",
+ "x-title": "Landing Page unique ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the page."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "unpublish_page",
+ "methodNameCamel": "unpublishPage"
+ },
+ "operationId": "postLandingPageIdActionsUnpublish",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/landing-pages/{page_id}/content": {
+ "get": {
+ "summary": "Get landing page content",
+ "description": "Get the the HTML for your landing page.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "page_id",
+ "x-title": "Landing Page unique ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the page."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Landing Page Content",
+ "description": "The HTML content for a landing page.",
+ "properties": {
+ "html": {
+ "type": "string",
+ "title": "Landing Page HTML",
+ "description": "The raw HTML for the landing page."
+ },
+ "json": {
+ "type": "string",
+ "title": "Landing Page JSON",
+ "description": "The JSON Structure for the landing page"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "landingPages"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_page_content",
+ "methodNameCamel": "getPageContent"
+ },
+ "operationId": "getLandingPageIdContent",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports": {
+ "get": {
+ "summary": "List campaign reports",
+ "description": "Get campaign reports.",
+ "operationId": "getReports",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "type",
+ "x-title": "Campaign Type",
+ "in": "query",
+ "description": "The campaign type.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ {
+ "name": "before_send_time",
+ "x-title": "Before Send Time",
+ "in": "query",
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ },
+ {
+ "name": "since_send_time",
+ "x-title": "Since Send Time",
+ "in": "query",
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "format": "date-time",
+ "required": false
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Reports",
+ "description": "A list of reports containing campaigns marked as Sent.",
+ "properties": {
+ "reports": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Campaign Report",
+ "description": "Report details about a sent campaign.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "The type of campaign (regular, plain-text, ab_split, rss, automation, variate, or auto)."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign.",
+ "readOnly": true
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "The number of abuse reports generated for this campaign."
+ },
+ "unsubscribed": {
+ "type": "integer",
+ "title": "Unsubscribe Count",
+ "description": "The total number of unsubscribed members for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent in ISO 8601 format.",
+ "readOnly": true
+ },
+ "rss_last_send": {
+ "type": "string",
+ "format": "date-time",
+ "title": "RSS Last Send",
+ "description": "For RSS campaigns, the date and time of the last send in ISO 8601 format.",
+ "readOnly": true
+ },
+ "bounces": {
+ "type": "object",
+ "title": "Bounces",
+ "description": "An object describing the bounce summary for the campaign.",
+ "properties": {
+ "hard_bounces": {
+ "type": "integer",
+ "title": "Hard Bounces",
+ "description": "The total number of hard bounced email addresses."
+ },
+ "soft_bounces": {
+ "type": "integer",
+ "title": "Soft Bounces",
+ "description": "The total number of soft bounced email addresses."
+ },
+ "syntax_errors": {
+ "type": "integer",
+ "title": "Syntax Errors",
+ "description": "The total number of addresses that were syntax-related bounces."
+ }
+ }
+ },
+ "forwards": {
+ "type": "object",
+ "title": "Forwards",
+ "description": "An object describing the forwards and forward activity for the campaign.",
+ "properties": {
+ "forwards_count": {
+ "type": "integer",
+ "title": "Total Forwards",
+ "description": "How many times the campaign has been forwarded."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "How many times the forwarded campaign has been opened."
+ }
+ }
+ },
+ "opens": {
+ "type": "object",
+ "title": "Opens",
+ "description": "An object describing the open activity for the campaign.",
+ "properties": {
+ "opens_total": {
+ "type": "integer",
+ "title": "Total Opens",
+ "description": "The total number of opens for a campaign."
+ },
+ "proxy_excluded_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Opens",
+ "description": "The total number of opens for a campaign, excluding opens from email clients that use proxies."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The total number of unique opens for a campaign."
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Unique Opens",
+ "description": "The total number of unique opens for a campaign, excluding opens from email clients that use proxies."
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens for a campaign divided by the total number of successful deliveries."
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number",
+ "title": "Proxy Excluded Open Rate",
+ "description": "The average unique open rate for a campaign, excluding opens from email clients that use proxies."
+ },
+ "last_open": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Open",
+ "description": "The date and time of the last recorded open in ISO 8601 format."
+ }
+ }
+ },
+ "clicks": {
+ "type": "object",
+ "title": "Clicks",
+ "description": "An object describing the click activity for the campaign.",
+ "properties": {
+ "clicks_total": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for the campaign."
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "The total number of unique clicks for links across a campaign."
+ },
+ "unique_subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The total number of subscribers who clicked on a campaign."
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries."
+ },
+ "last_click": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Click",
+ "description": "The date and time of the last recorded click for the campaign in ISO 8601 format."
+ }
+ }
+ },
+ "facebook_likes": {
+ "type": "object",
+ "title": "Facebook Likes",
+ "description": "An object describing campaign engagement on Facebook.",
+ "properties": {
+ "recipient_likes": {
+ "type": "integer",
+ "title": "Recipient Likes",
+ "description": "The number of recipients who liked the campaign on Facebook."
+ },
+ "unique_likes": {
+ "type": "integer",
+ "title": "Unique Likes",
+ "description": "The number of unique likes."
+ },
+ "facebook_likes": {
+ "type": "integer",
+ "title": "Facebook Likes",
+ "description": "The number of Facebook likes for the campaign."
+ }
+ }
+ },
+ "industry_stats": {
+ "type": "object",
+ "title": "Industry Stats",
+ "description": "The average campaign statistics for your industry.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Industry Type",
+ "description": "The type of business industry associated with your account. For example: retail, education, etc."
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The industry open rate."
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The industry click rate."
+ },
+ "bounce_rate": {
+ "type": "number",
+ "title": "Bounce Rate",
+ "description": "The industry bounce rate."
+ },
+ "unopen_rate": {
+ "type": "number",
+ "title": "Unopened Rate",
+ "description": "The industry unopened rate."
+ },
+ "unsub_rate": {
+ "type": "number",
+ "title": "Unsubscribe Rate",
+ "description": "The industry unsubscribe rate."
+ },
+ "abuse_rate": {
+ "type": "number",
+ "title": "Abuse Rate",
+ "description": "The industry abuse rate."
+ }
+ }
+ },
+ "list_stats": {
+ "type": "object",
+ "title": "List Stats",
+ "description": "The average campaign statistics for your list. This won't be present if we haven't calculated it yet for this list.",
+ "properties": {
+ "sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The average number of subscriptions per month for the list.",
+ "readOnly": true
+ },
+ "unsub_rate": {
+ "type": "number",
+ "title": "Average Unsubscription Rate",
+ "description": "The average number of unsubscriptions per month for the list.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average unique open rate (a percentage represented as a number between 0 and 100) per campaign for the list.",
+ "readOnly": true
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number",
+ "title": "Proxy Excluded Open Rate",
+ "description": "The average unique open rate (a percentage represented as a number between 0 and 100) per campaign for the list, excluding opens from email clients that use proxies.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average click rate (a percentage represented as a number between 0 and 100) per campaign for the list.",
+ "readOnly": true
+ }
+ }
+ },
+ "ab_split": {
+ "type": "object",
+ "title": "A/B Split Stats",
+ "description": "General stats about different groups of an A/B Split campaign. Does not return information about Multivariate Campaigns.",
+ "properties": {
+ "a": {
+ "type": "object",
+ "title": "Campaign A",
+ "description": "Stats for Campaign A.",
+ "properties": {
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "Bounces for Campaign A."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "Abuse reports for Campaign A."
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "Unsubscribes for Campaign A."
+ },
+ "recipient_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "Recipient Clicks for Campaign A."
+ },
+ "forwards": {
+ "type": "integer",
+ "title": "Forwards",
+ "description": "Forwards for Campaign A."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "Opens from forwards for Campaign A."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "Opens for Campaign A."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The last open for Campaign A."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "Unique opens for Campaign A."
+ }
+ }
+ },
+ "b": {
+ "type": "object",
+ "title": "Campaign B",
+ "description": "Stats for Campaign B.",
+ "properties": {
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "Bounces for Campaign B."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "Abuse reports for Campaign B."
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "Unsubscribes for Campaign B."
+ },
+ "recipient_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "Recipients clicks for Campaign B."
+ },
+ "forwards": {
+ "type": "integer",
+ "title": "Forwards",
+ "description": "Forwards for Campaign B."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "Opens for forwards from Campaign B."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "Opens for Campaign B."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The last open for Campaign B."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "Unique opens for Campaign B."
+ }
+ }
+ }
+ }
+ },
+ "timewarp": {
+ "type": "array",
+ "title": "Timewarp Stats",
+ "description": "An hourly breakdown of sends, opens, and clicks if a campaign is sent using timewarp.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "gmt_offset": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "For campaigns sent with timewarp, the time zone group the member is apart of."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "The number of opens."
+ },
+ "last_open": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Open",
+ "description": "The date and time of the last open in ISO 8601 format."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens."
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The number of clicks."
+ },
+ "last_click": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Click",
+ "description": "The date and time of the last click in ISO 8601 format."
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "The number of unique clicks."
+ },
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "The number of bounces."
+ }
+ }
+ }
+ },
+ "timeseries": {
+ "type": "array",
+ "title": "Timeseries",
+ "description": "An hourly breakdown of the performance of the campaign over the first 24 hours.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "timestamp": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Timestamp",
+ "description": "The date and time for the series in ISO 8601 format."
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The number of emails sent in the timeseries."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens in the timeseries."
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Unique Opens",
+ "description": "The number of unique opens in the timeseries, excluding opens from email clients that use proxies."
+ },
+ "recipients_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "The number of clicks in the timeseries."
+ }
+ }
+ }
+ },
+ "share_report": {
+ "type": "object",
+ "title": "Share Report",
+ "description": "The url and password for the [VIP report](https://mailchimp.com/help/share-a-campaign-report/).",
+ "properties": {
+ "share_url": {
+ "type": "string",
+ "title": "Report URL",
+ "description": "The URL for the VIP report.",
+ "readOnly": true
+ },
+ "share_password": {
+ "type": "string",
+ "title": "Report Password",
+ "description": "If password protected, the password for the VIP report.",
+ "readOnly": true
+ }
+ }
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Three letter currency code for this user",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Lists",
+ "description": "An array of objects, each representing a report resource."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all_campaign_reports",
+ "methodNameCamel": "getAllCampaignReports"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}": {
+ "get": {
+ "summary": "Get campaign report",
+ "description": "Get report details for a specific sent campaign.",
+ "operationId": "getReportsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Report",
+ "description": "Report details about a sent campaign.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "The type of campaign (regular, plain-text, ab_split, rss, automation, variate, or auto)."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign.",
+ "readOnly": true
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "The number of abuse reports generated for this campaign."
+ },
+ "unsubscribed": {
+ "type": "integer",
+ "title": "Unsubscribe Count",
+ "description": "The total number of unsubscribed members for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent in ISO 8601 format.",
+ "readOnly": true
+ },
+ "rss_last_send": {
+ "type": "string",
+ "format": "date-time",
+ "title": "RSS Last Send",
+ "description": "For RSS campaigns, the date and time of the last send in ISO 8601 format.",
+ "readOnly": true
+ },
+ "bounces": {
+ "type": "object",
+ "title": "Bounces",
+ "description": "An object describing the bounce summary for the campaign.",
+ "properties": {
+ "hard_bounces": {
+ "type": "integer",
+ "title": "Hard Bounces",
+ "description": "The total number of hard bounced email addresses."
+ },
+ "soft_bounces": {
+ "type": "integer",
+ "title": "Soft Bounces",
+ "description": "The total number of soft bounced email addresses."
+ },
+ "syntax_errors": {
+ "type": "integer",
+ "title": "Syntax Errors",
+ "description": "The total number of addresses that were syntax-related bounces."
+ }
+ }
+ },
+ "forwards": {
+ "type": "object",
+ "title": "Forwards",
+ "description": "An object describing the forwards and forward activity for the campaign.",
+ "properties": {
+ "forwards_count": {
+ "type": "integer",
+ "title": "Total Forwards",
+ "description": "How many times the campaign has been forwarded."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "How many times the forwarded campaign has been opened."
+ }
+ }
+ },
+ "opens": {
+ "type": "object",
+ "title": "Opens",
+ "description": "An object describing the open activity for the campaign.",
+ "properties": {
+ "opens_total": {
+ "type": "integer",
+ "title": "Total Opens",
+ "description": "The total number of opens for a campaign."
+ },
+ "proxy_excluded_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Opens",
+ "description": "The total number of opens for a campaign, excluding opens from email clients that use proxies."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The total number of unique opens for a campaign."
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Unique Opens",
+ "description": "The total number of unique opens for a campaign, excluding opens from email clients that use proxies."
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens for a campaign divided by the total number of successful deliveries."
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number",
+ "title": "Proxy Excluded Open Rate",
+ "description": "The average unique open rate for a campaign, excluding opens from email clients that use proxies."
+ },
+ "last_open": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Open",
+ "description": "The date and time of the last recorded open in ISO 8601 format."
+ }
+ }
+ },
+ "clicks": {
+ "type": "object",
+ "title": "Clicks",
+ "description": "An object describing the click activity for the campaign.",
+ "properties": {
+ "clicks_total": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for the campaign."
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "The total number of unique clicks for links across a campaign."
+ },
+ "unique_subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The total number of subscribers who clicked on a campaign."
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries."
+ },
+ "last_click": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Click",
+ "description": "The date and time of the last recorded click for the campaign in ISO 8601 format."
+ }
+ }
+ },
+ "facebook_likes": {
+ "type": "object",
+ "title": "Facebook Likes",
+ "description": "An object describing campaign engagement on Facebook.",
+ "properties": {
+ "recipient_likes": {
+ "type": "integer",
+ "title": "Recipient Likes",
+ "description": "The number of recipients who liked the campaign on Facebook."
+ },
+ "unique_likes": {
+ "type": "integer",
+ "title": "Unique Likes",
+ "description": "The number of unique likes."
+ },
+ "facebook_likes": {
+ "type": "integer",
+ "title": "Facebook Likes",
+ "description": "The number of Facebook likes for the campaign."
+ }
+ }
+ },
+ "industry_stats": {
+ "type": "object",
+ "title": "Industry Stats",
+ "description": "The average campaign statistics for your industry.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Industry Type",
+ "description": "The type of business industry associated with your account. For example: retail, education, etc."
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The industry open rate."
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The industry click rate."
+ },
+ "bounce_rate": {
+ "type": "number",
+ "title": "Bounce Rate",
+ "description": "The industry bounce rate."
+ },
+ "unopen_rate": {
+ "type": "number",
+ "title": "Unopened Rate",
+ "description": "The industry unopened rate."
+ },
+ "unsub_rate": {
+ "type": "number",
+ "title": "Unsubscribe Rate",
+ "description": "The industry unsubscribe rate."
+ },
+ "abuse_rate": {
+ "type": "number",
+ "title": "Abuse Rate",
+ "description": "The industry abuse rate."
+ }
+ }
+ },
+ "list_stats": {
+ "type": "object",
+ "title": "List Stats",
+ "description": "The average campaign statistics for your list. This won't be present if we haven't calculated it yet for this list.",
+ "properties": {
+ "sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The average number of subscriptions per month for the list.",
+ "readOnly": true
+ },
+ "unsub_rate": {
+ "type": "number",
+ "title": "Average Unsubscription Rate",
+ "description": "The average number of unsubscriptions per month for the list.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average unique open rate (a percentage represented as a number between 0 and 100) per campaign for the list.",
+ "readOnly": true
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number",
+ "title": "Proxy Excluded Open Rate",
+ "description": "The average unique open rate (a percentage represented as a number between 0 and 100) per campaign for the list, excluding opens from email clients that use proxies.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average click rate (a percentage represented as a number between 0 and 100) per campaign for the list.",
+ "readOnly": true
+ }
+ }
+ },
+ "ab_split": {
+ "type": "object",
+ "title": "A/B Split Stats",
+ "description": "General stats about different groups of an A/B Split campaign. Does not return information about Multivariate Campaigns.",
+ "properties": {
+ "a": {
+ "type": "object",
+ "title": "Campaign A",
+ "description": "Stats for Campaign A.",
+ "properties": {
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "Bounces for Campaign A."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "Abuse reports for Campaign A."
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "Unsubscribes for Campaign A."
+ },
+ "recipient_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "Recipient Clicks for Campaign A."
+ },
+ "forwards": {
+ "type": "integer",
+ "title": "Forwards",
+ "description": "Forwards for Campaign A."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "Opens from forwards for Campaign A."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "Opens for Campaign A."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The last open for Campaign A."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "Unique opens for Campaign A."
+ }
+ }
+ },
+ "b": {
+ "type": "object",
+ "title": "Campaign B",
+ "description": "Stats for Campaign B.",
+ "properties": {
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "Bounces for Campaign B."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "Abuse reports for Campaign B."
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "Unsubscribes for Campaign B."
+ },
+ "recipient_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "Recipients clicks for Campaign B."
+ },
+ "forwards": {
+ "type": "integer",
+ "title": "Forwards",
+ "description": "Forwards for Campaign B."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "Opens for forwards from Campaign B."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "Opens for Campaign B."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The last open for Campaign B."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "Unique opens for Campaign B."
+ }
+ }
+ }
+ }
+ },
+ "timewarp": {
+ "type": "array",
+ "title": "Timewarp Stats",
+ "description": "An hourly breakdown of sends, opens, and clicks if a campaign is sent using timewarp.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "gmt_offset": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "For campaigns sent with timewarp, the time zone group the member is apart of."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "The number of opens."
+ },
+ "last_open": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Open",
+ "description": "The date and time of the last open in ISO 8601 format."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens."
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The number of clicks."
+ },
+ "last_click": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Click",
+ "description": "The date and time of the last click in ISO 8601 format."
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "The number of unique clicks."
+ },
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "The number of bounces."
+ }
+ }
+ }
+ },
+ "timeseries": {
+ "type": "array",
+ "title": "Timeseries",
+ "description": "An hourly breakdown of the performance of the campaign over the first 24 hours.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "timestamp": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Timestamp",
+ "description": "The date and time for the series in ISO 8601 format."
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The number of emails sent in the timeseries."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens in the timeseries."
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Unique Opens",
+ "description": "The number of unique opens in the timeseries, excluding opens from email clients that use proxies."
+ },
+ "recipients_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "The number of clicks in the timeseries."
+ }
+ }
+ }
+ },
+ "share_report": {
+ "type": "object",
+ "title": "Share Report",
+ "description": "The url and password for the [VIP report](https://mailchimp.com/help/share-a-campaign-report/).",
+ "properties": {
+ "share_url": {
+ "type": "string",
+ "title": "Report URL",
+ "description": "The URL for the VIP report.",
+ "readOnly": true
+ },
+ "share_password": {
+ "type": "string",
+ "title": "Report Password",
+ "description": "If password protected, the password for the VIP report.",
+ "readOnly": true
+ }
+ }
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Three letter currency code for this user",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_report",
+ "methodNameCamel": "getCampaignReport"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/abuse-reports": {
+ "get": {
+ "summary": "List abuse reports",
+ "description": "Get a list of abuse complaints for a specific campaign.",
+ "operationId": "getReportsIdAbuseReportsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Abuse Complaints",
+ "description": "A list of abuse complaints for a specific list.",
+ "properties": {
+ "abuse_reports": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Abuse Complaint",
+ "description": "Details of abuse complaints for a specific list. An abuse complaint occurs when your recipient clicks to 'report spam' in their email program.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Abuse Report ID",
+ "description": "The id for the abuse report",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id for the abuse report",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id of the list for the abuse report.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "description": "Date for the abuse report",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Abuse Reports",
+ "description": "An array of objects, each representing an abuse report resource."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_abuse_reports",
+ "methodNameCamel": "getCampaignAbuseReports"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/abuse-reports/{report_id}": {
+ "get": {
+ "summary": "Get abuse report",
+ "description": "Get information about a specific abuse report for a campaign.",
+ "operationId": "getReportsIdAbuseReportsIdId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "report_id",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The id for the abuse report."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Abuse Complaint",
+ "description": "Details of abuse complaints for a specific list. An abuse complaint occurs when your recipient clicks to 'report spam' in their email program.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Abuse Report ID",
+ "description": "The id for the abuse report",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id for the abuse report",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id of the list for the abuse report.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "description": "Date for the abuse report",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_abuse_report",
+ "methodNameCamel": "getCampaignAbuseReport"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/advice": {
+ "get": {
+ "summary": "List campaign feedback",
+ "description": "Get feedback based on a campaign's statistics. Advice feedback is based on campaign stats like opens, clicks, unsubscribes, bounces, and more.",
+ "operationId": "getReportsIdAdvice",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Advice Report",
+ "description": "A list of feedback based on a campaign's statistics.",
+ "properties": {
+ "advice": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Campaign Advice",
+ "description": "Campaign feedback details.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Advice Type",
+ "description": "The sentiment type for a feedback message.",
+ "enum": [
+ "negative",
+ "positive",
+ "neutral"
+ ],
+ "readOnly": true
+ },
+ "message": {
+ "type": "string",
+ "title": "Advice Message",
+ "description": "The advice message.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Campaign Advice",
+ "description": "An array of objects, each representing a point of campaign feedback."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_advice",
+ "methodNameCamel": "getCampaignAdvice"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/click-details": {
+ "get": {
+ "summary": "List campaign details",
+ "description": "Get information about clicks on specific links in your Mailchimp campaigns.",
+ "operationId": "getReportsIdClickDetails",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns click reports sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "total_clicks",
+ "unique_clicks"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Click Detail Report",
+ "description": "A list of URLs and unique IDs included in HTML and plain-text versions of a campaign.",
+ "properties": {
+ "urls_clicked": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Click Detail Report",
+ "description": "A report of links clicked in a specific campaign.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "URL ID",
+ "description": "The unique id for the link.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for the link in the campaign.",
+ "readOnly": true
+ },
+ "total_clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The number of total clicks for a link.",
+ "readOnly": true
+ },
+ "click_percentage": {
+ "type": "number",
+ "title": "Click Percentage",
+ "description": "The percentage of total clicks a link generated for a campaign.",
+ "readOnly": true
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "Number of unique clicks for a link.",
+ "readOnly": true
+ },
+ "unique_click_percentage": {
+ "type": "number",
+ "title": "Unique Click Percentage",
+ "description": "The percentage of unique clicks a link generated for a campaign.",
+ "readOnly": true
+ },
+ "last_click": {
+ "type": "string",
+ "title": "Last Click",
+ "description": "The date and time for the last recorded click for a link in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ab_split": {
+ "type": "object",
+ "title": "A/B Split",
+ "description": "A breakdown of clicks by different groups of an A/B Split campaign. Does not return information about Multivariate Campaigns.",
+ "properties": {
+ "a": {
+ "type": "object",
+ "title": "Group A",
+ "description": "Stats for Group A.",
+ "properties": {
+ "total_clicks_a": {
+ "type": "integer",
+ "title": "Total Clicks Group A",
+ "description": "The total number of clicks for Group A.",
+ "readOnly": true
+ },
+ "click_percentage_a": {
+ "type": "number",
+ "title": "Click Percentage Group A",
+ "description": "The percentage of total clicks for Group A.",
+ "readOnly": true
+ },
+ "unique_clicks_a": {
+ "type": "integer",
+ "title": "Unique Clicks Group A",
+ "description": "The number of unique clicks for Group A.",
+ "readOnly": true
+ },
+ "unique_click_percentage_a": {
+ "type": "number",
+ "title": "Unique Click Percentage Group A",
+ "description": "The percentage of unique clicks for Group A.",
+ "readOnly": true
+ }
+ }
+ },
+ "b": {
+ "type": "object",
+ "title": "Group B",
+ "description": "Stats for Group B.",
+ "properties": {
+ "total_clicks_b": {
+ "type": "integer",
+ "title": "Total Clicks Group B",
+ "description": "The total number of clicks for Group B.",
+ "readOnly": true
+ },
+ "click_percentage_b": {
+ "type": "number",
+ "title": "Click Percentage Group B",
+ "description": "The percentage of total clicks for Group B.",
+ "readOnly": true
+ },
+ "unique_clicks_b": {
+ "type": "integer",
+ "title": "Unique Clicks Group B",
+ "description": "The number of unique clicks for Group B.",
+ "readOnly": true
+ },
+ "unique_click_percentage_b": {
+ "type": "number",
+ "title": "Unique Click Percentage Group B",
+ "description": "The percentage of unique clicks for Group B.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "URLs Clicked",
+ "description": "An array of objects, each representing a specific URL contained in the campaign."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_click_details",
+ "methodNameCamel": "getCampaignClickDetails"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/click-details/{link_id}": {
+ "get": {
+ "summary": "Get campaign link details",
+ "description": "Get click details for a specific link in a campaign.",
+ "operationId": "getReportsIdClickDetailsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "link_id",
+ "x-title": "Link ID",
+ "description": "The id for the link.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Click Detail Report",
+ "description": "A report of links clicked in a specific campaign.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "URL ID",
+ "description": "The unique id for the link.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for the link in the campaign.",
+ "readOnly": true
+ },
+ "total_clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The number of total clicks for a link.",
+ "readOnly": true
+ },
+ "click_percentage": {
+ "type": "number",
+ "title": "Click Percentage",
+ "description": "The percentage of total clicks a link generated for a campaign.",
+ "readOnly": true
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "Number of unique clicks for a link.",
+ "readOnly": true
+ },
+ "unique_click_percentage": {
+ "type": "number",
+ "title": "Unique Click Percentage",
+ "description": "The percentage of unique clicks a link generated for a campaign.",
+ "readOnly": true
+ },
+ "last_click": {
+ "type": "string",
+ "title": "Last Click",
+ "description": "The date and time for the last recorded click for a link in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ab_split": {
+ "type": "object",
+ "title": "A/B Split",
+ "description": "A breakdown of clicks by different groups of an A/B Split campaign. Does not return information about Multivariate Campaigns.",
+ "properties": {
+ "a": {
+ "type": "object",
+ "title": "Group A",
+ "description": "Stats for Group A.",
+ "properties": {
+ "total_clicks_a": {
+ "type": "integer",
+ "title": "Total Clicks Group A",
+ "description": "The total number of clicks for Group A.",
+ "readOnly": true
+ },
+ "click_percentage_a": {
+ "type": "number",
+ "title": "Click Percentage Group A",
+ "description": "The percentage of total clicks for Group A.",
+ "readOnly": true
+ },
+ "unique_clicks_a": {
+ "type": "integer",
+ "title": "Unique Clicks Group A",
+ "description": "The number of unique clicks for Group A.",
+ "readOnly": true
+ },
+ "unique_click_percentage_a": {
+ "type": "number",
+ "title": "Unique Click Percentage Group A",
+ "description": "The percentage of unique clicks for Group A.",
+ "readOnly": true
+ }
+ }
+ },
+ "b": {
+ "type": "object",
+ "title": "Group B",
+ "description": "Stats for Group B.",
+ "properties": {
+ "total_clicks_b": {
+ "type": "integer",
+ "title": "Total Clicks Group B",
+ "description": "The total number of clicks for Group B.",
+ "readOnly": true
+ },
+ "click_percentage_b": {
+ "type": "number",
+ "title": "Click Percentage Group B",
+ "description": "The percentage of total clicks for Group B.",
+ "readOnly": true
+ },
+ "unique_clicks_b": {
+ "type": "integer",
+ "title": "Unique Clicks Group B",
+ "description": "The number of unique clicks for Group B.",
+ "readOnly": true
+ },
+ "unique_click_percentage_b": {
+ "type": "number",
+ "title": "Unique Click Percentage Group B",
+ "description": "The percentage of unique clicks for Group B.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_click_details_for_link",
+ "methodNameCamel": "getCampaignClickDetailsForLink"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/click-details/{link_id}/members": {
+ "get": {
+ "summary": "List clicked link subscribers",
+ "description": "Get information about list members who clicked on a specific link in a campaign.",
+ "operationId": "getReportsIdClickDetailsIdMembers",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "link_id",
+ "x-title": "Link ID",
+ "description": "The id for the link.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Click Detail Members",
+ "description": "A collection of members who clicked on a specific link within a campaign.",
+ "properties": {
+ "members": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Click Detail Member",
+ "description": "A subscriber who clicked a specific URL in a specific campaign.",
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of times the subscriber clicked on the link.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "url_id": {
+ "type": "string",
+ "title": "URL ID",
+ "description": "The id for the tracked URL in the campaign.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "contact_status": {
+ "type": "string",
+ "title": "Member Status",
+ "description": "The status of the member, namely if they are subscribed, unsubscribed, deleted, non-subscribed, transactional, pending, or need reconfirmation.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Lists",
+ "description": "An array of objects, each representing a member who clicked a specific link within a campaign."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_subscribers_info",
+ "methodNameCamel": "getSubscribersInfo"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/click-details/{link_id}/members/{subscriber_hash}": {
+ "get": {
+ "summary": "Get clicked link subscriber",
+ "description": "Get information about a specific subscriber who clicked a link in a specific campaign.",
+ "operationId": "getReportsIdClickDetailsIdMembersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "link_id",
+ "x-title": "Link ID",
+ "description": "The id for the link.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Click Detail Member",
+ "description": "A subscriber who clicked a specific URL in a specific campaign.",
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of times the subscriber clicked on the link.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "url_id": {
+ "type": "string",
+ "title": "URL ID",
+ "description": "The id for the tracked URL in the campaign.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "contact_status": {
+ "type": "string",
+ "title": "Member Status",
+ "description": "The status of the member, namely if they are subscribed, unsubscribed, deleted, non-subscribed, transactional, pending, or need reconfirmation.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_subscriber_info",
+ "methodNameCamel": "getSubscriberInfo"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/open-details": {
+ "get": {
+ "summary": "List campaign open details",
+ "description": "Get detailed information about any campaign emails that were opened by a list member.",
+ "operationId": "getReportsIdOpenDetails",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "since",
+ "x-title": "Campaign opens since",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to campaign open events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string",
+ "x-example": "2016-04-12 12:00:00"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns open reports sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "opens_count"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Open Detail Report",
+ "description": "A detailed report of any campaign emails that were opened by a list member.",
+ "properties": {
+ "members": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Open Activity",
+ "description": "A list of a member's opens activity in a specific campaign.",
+ "properties": {
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "contact_status": {
+ "type": "string",
+ "title": "Member Status",
+ "description": "The status of the member, namely if they are subscribed, unsubscribed, deleted, non-subscribed, transactional, pending, or need reconfirmation.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "opens_count": {
+ "type": "integer",
+ "title": "Opens count",
+ "description": "The total number of times the this campaign was opened by the list member.",
+ "readOnly": true
+ },
+ "proxy_excluded_opens_count": {
+ "type": "integer",
+ "title": "Proxy Excluded Opens count",
+ "description": "The total number of times the this campaign was opened by the list member excluding opens from email clients that use proxies .",
+ "readOnly": true
+ },
+ "opens": {
+ "type": "array",
+ "title": "Time series data of opens activity",
+ "description": "An array of timestamps for each time a list member opened the campaign. If a list member opens an email multiple times, this will return a separate timestamp for each open event.",
+ "items": {
+ "type": "object",
+ "title": "Member Activity",
+ "description": "A summary of the interaction with the campaign.",
+ "properties": {
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time recorded for the action in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "is_proxy_open": {
+ "type": "boolean",
+ "title": "Proxy Open",
+ "description": "Indicates if the open was from an email client that use proxies.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Open Reports",
+ "description": "An array of objects, each representing a list member who opened a campaign email. Each members object will contain information about the number of total opens by a single member, as well as timestamps for each open event."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_opens": {
+ "type": "integer",
+ "title": "Total opens",
+ "description": "The total number of opens matching the query regardless of pagination."
+ },
+ "total_proxy_excluded_opens": {
+ "type": "integer",
+ "title": "Total Proxy Excluded Opens",
+ "description": "The total number of opens excluding opens from email clients that use proxies regardless of pagination."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_open_details",
+ "methodNameCamel": "getCampaignOpenDetails"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/open-details/{subscriber_hash}": {
+ "get": {
+ "summary": "Get opened campaign subscriber",
+ "description": "Get information about a specific subscriber who opened a campaign.",
+ "operationId": "getReportsIdOpenDetailsIdMembersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Open Activity",
+ "description": "A list of a member's opens activity in a specific campaign.",
+ "properties": {
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "contact_status": {
+ "type": "string",
+ "title": "Member Status",
+ "description": "The status of the member, namely if they are subscribed, unsubscribed, deleted, non-subscribed, transactional, pending, or need reconfirmation.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "opens_count": {
+ "type": "integer",
+ "title": "Opens count",
+ "description": "The total number of times the this campaign was opened by the list member.",
+ "readOnly": true
+ },
+ "proxy_excluded_opens_count": {
+ "type": "integer",
+ "title": "Proxy Excluded Opens count",
+ "description": "The total number of times the this campaign was opened by the list member excluding opens from email clients that use proxies .",
+ "readOnly": true
+ },
+ "opens": {
+ "type": "array",
+ "title": "Time series data of opens activity",
+ "description": "An array of timestamps for each time a list member opened the campaign. If a list member opens an email multiple times, this will return a separate timestamp for each open event.",
+ "items": {
+ "type": "object",
+ "title": "Member Activity",
+ "description": "A summary of the interaction with the campaign.",
+ "properties": {
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time recorded for the action in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "is_proxy_open": {
+ "type": "boolean",
+ "title": "Proxy Open",
+ "description": "Indicates if the open was from an email client that use proxies.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_subscriber_info_for_opened_campaign",
+ "methodNameCamel": "getSubscriberInfoForOpenedCampaign"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/domain-performance": {
+ "get": {
+ "summary": "List domain performance stats",
+ "description": "Get statistics for the top-performing email domains in a campaign.",
+ "operationId": "getReportsIdDomainPerformance",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Domain Performance",
+ "description": "Statistics for the top-performing email domains in a campaign.",
+ "properties": {
+ "domains": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Email Domain",
+ "description": "A single email domain's performance",
+ "properties": {
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The name of the domain (gmail.com, hotmail.com, yahoo.com).",
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Total Sent",
+ "description": "The number of emails sent to that specific domain.",
+ "readOnly": true
+ },
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "The number of bounces at a domain.",
+ "readOnly": true
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "The number of opens for a domain.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The number of clicks for a domain.",
+ "readOnly": true
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "The total number of unsubscribes for a domain.",
+ "readOnly": true
+ },
+ "delivered": {
+ "type": "integer",
+ "title": "Successful Deliveries",
+ "description": "The number of successful deliveries for a domain.",
+ "readOnly": true
+ },
+ "emails_pct": {
+ "type": "number",
+ "title": "Email Percent",
+ "description": "The percentage of total emails that went to this domain.",
+ "readOnly": true
+ },
+ "bounces_pct": {
+ "type": "number",
+ "title": "Bounces Percent",
+ "description": "The percentage of total bounces from this domain.",
+ "readOnly": true
+ },
+ "opens_pct": {
+ "type": "number",
+ "title": "Opens Percent",
+ "description": "The percentage of total opens from this domain.",
+ "readOnly": true
+ },
+ "clicks_pct": {
+ "type": "number",
+ "title": "Clicks Percent",
+ "description": "The percentage of total clicks from this domain.",
+ "readOnly": true
+ },
+ "unsubs_pct": {
+ "type": "number",
+ "title": "Unsubscribes Percent",
+ "description": "The percentage of total unsubscribes from this domain.",
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Lists",
+ "description": "The top 5 email domains based on total delivered emails.",
+ "readOnly": true
+ },
+ "total_sent": {
+ "type": "integer",
+ "title": "Total Sent",
+ "description": "The total number of emails sent for the campaign.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_domain_performance_for_campaign",
+ "methodNameCamel": "getDomainPerformanceForCampaign"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/eepurl": {
+ "get": {
+ "summary": "List EepURL activity",
+ "description": "Get a summary of social activity for the campaign, tracked by EepURL.",
+ "operationId": "getReportsIdEepurl",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Eepurl Activity",
+ "description": "A summary of social activity for the campaign, tracked by EepURL.",
+ "properties": {
+ "twitter": {
+ "type": "object",
+ "title": "Twitter Stats",
+ "description": "A summary of Twitter activity for a campaign.",
+ "properties": {
+ "tweets": {
+ "type": "integer",
+ "title": "Tweet Count",
+ "description": "The number of tweets including a link to the campaign.",
+ "readOnly": true
+ },
+ "first_tweet": {
+ "type": "string",
+ "title": "First Tweet Timestamp",
+ "description": "The day and time of the first recorded tweet with a link to the campaign.",
+ "readOnly": true
+ },
+ "last_tweet": {
+ "type": "string",
+ "title": "Last Tweet Timestamp",
+ "description": "The day and time of the last recorded tweet with a link to the campaign.",
+ "readOnly": true
+ },
+ "retweets": {
+ "type": "integer",
+ "title": "Retweet Count",
+ "description": "The number of retweets that include a link to the campaign.",
+ "readOnly": true
+ },
+ "statuses": {
+ "type": "array",
+ "title": "Twitter Status",
+ "description": "A summary of tweets that include a link to the campaign.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "title": "Twitter Status",
+ "description": "An individual tweet.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "title": "Status Body",
+ "description": "The body of the tweet.",
+ "readOnly": true
+ },
+ "screen_name": {
+ "type": "string",
+ "title": "Screen Name",
+ "description": "The Twitter handle for the author of the tweet.",
+ "readOnly": true
+ },
+ "status_id": {
+ "type": "string",
+ "title": "Status ID",
+ "description": "The individual id for the tweet.",
+ "readOnly": true
+ },
+ "datetime": {
+ "type": "string",
+ "title": "Datetime",
+ "description": "A timestamp for the tweet.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "is_retweet": {
+ "type": "boolean",
+ "title": "Is Retweet",
+ "description": "A 'true' or 'false' status of whether the tweet is a retweet.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ }
+ },
+ "clicks": {
+ "type": "object",
+ "title": "Click Summary",
+ "description": "A summary of the click-throughs on the campaign's URL.",
+ "readOnly": true,
+ "properties": {
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The total number of clicks to the campaign's URL.",
+ "readOnly": true
+ },
+ "first_click": {
+ "type": "string",
+ "title": "First Click",
+ "description": "The timestamp for the first click to the URL.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "last_click": {
+ "type": "string",
+ "title": "Last Click",
+ "description": "The timestamp for the last click to the URL.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "locations": {
+ "type": "array",
+ "title": "Click Locations",
+ "description": "A summary of the top click locations.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "title": "Location",
+ "description": "An individual click location.",
+ "properties": {
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The two-digit country code for a recorded click."
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "If available, a specific region where the click was recorded.",
+ "example": "NY"
+ }
+ }
+ }
+ }
+ }
+ },
+ "referrers": {
+ "type": "array",
+ "title": "Referrers",
+ "description": "A summary of the top referrers for the campaign.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "title": "Referrer",
+ "description": "A single instance of a campaign referral.",
+ "properties": {
+ "referrer": {
+ "type": "string",
+ "title": "Referrer",
+ "description": "A referrer (truncated to 100 bytes)."
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The number of clicks a single referrer generated."
+ },
+ "first_click": {
+ "type": "string",
+ "title": "First Click",
+ "description": "The timestamp for the first click from this referrer.",
+ "format": "date-time"
+ },
+ "last_click": {
+ "type": "string",
+ "title": "Last Click",
+ "description": "The timestamp for the last click from this referrer.",
+ "format": "date-time"
+ }
+ }
+ },
+ "x-title": "Referrers"
+ },
+ "eepurl": {
+ "type": "string",
+ "title": "Eepurl",
+ "description": "The shortened link used for tracking.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_eepurl_activity_for_campaign",
+ "methodNameCamel": "getEepurlActivityForCampaign"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/email-activity": {
+ "get": {
+ "summary": "List email activity",
+ "description": "Get a list of member's subscriber activity in a specific campaign.",
+ "operationId": "getReportsIdEmailActivity",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "since",
+ "x-title": "Email Activity since",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Email Activity",
+ "description": "A list of member's subscriber activity in a specific campaign.",
+ "properties": {
+ "emails": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Email Activity",
+ "description": "A list of a member's subscriber activity in a specific campaign, including opens, clicks, and bounces.",
+ "properties": {
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "activity": {
+ "type": "array",
+ "title": "Member Activity",
+ "description": "An array of objects, each showing an interaction with the email. Member activity limited to 1,000 open activities and 1,000 click activities per member per campaign.",
+ "items": {
+ "type": "object",
+ "title": "Member Activity",
+ "description": "A summary of the interaction with the campaign.",
+ "properties": {
+ "action": {
+ "type": "string",
+ "title": "Action",
+ "description": "One of the following actions: 'open', 'click', or 'bounce'"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "If the action is a 'bounce', the type of bounce received: 'hard', 'soft'."
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time recorded for the action in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "If the action is a 'click', the URL on which the member clicked."
+ },
+ "ip": {
+ "type": "string",
+ "title": "IP",
+ "description": "The IP address recorded for the action."
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Sent To",
+ "description": "An array of members that were sent the campaign."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the sent campaign.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_email_activity_for_campaign",
+ "methodNameCamel": "getEmailActivityForCampaign"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/email-activity/{subscriber_hash}": {
+ "get": {
+ "summary": "Get subscriber email activity",
+ "description": "Get a specific list member's activity in a campaign including opens, clicks, and bounces.",
+ "operationId": "getReportsIdEmailActivityId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ {
+ "name": "since",
+ "x-title": "Email Activity since",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Email Activity",
+ "description": "A list of a member's subscriber activity in a specific campaign, including opens, clicks, and bounces.",
+ "properties": {
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The unique id for the campaign.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique id for the list.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "activity": {
+ "type": "array",
+ "title": "Member Activity",
+ "description": "An array of objects, each showing an interaction with the email. Member activity limited to 1,000 open activities and 1,000 click activities per member per campaign.",
+ "items": {
+ "type": "object",
+ "title": "Member Activity",
+ "description": "A summary of the interaction with the campaign.",
+ "properties": {
+ "action": {
+ "type": "string",
+ "title": "Action",
+ "description": "One of the following actions: 'open', 'click', or 'bounce'"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "If the action is a 'bounce', the type of bounce received: 'hard', 'soft'."
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time recorded for the action in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "If the action is a 'click', the URL on which the member clicked."
+ },
+ "ip": {
+ "type": "string",
+ "title": "IP",
+ "description": "The IP address recorded for the action."
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_email_activity_for_subscriber",
+ "methodNameCamel": "getEmailActivityForSubscriber"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/locations": {
+ "get": {
+ "summary": "List top open activities",
+ "description": "Get top open locations for a specific campaign.",
+ "operationId": "getReportsIdLocations",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Open Locations",
+ "description": "Top open locations for a specific campaign.",
+ "properties": {
+ "locations": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The ISO 3166 2 digit country code.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "An internal code for the region representing the more specific location area such as city or state. When this is blank, it indicates we know the country, but not the region.",
+ "readOnly": true
+ },
+ "region_name": {
+ "type": "string",
+ "title": "Region Name",
+ "description": "The name of the region, if we have one. For blank \"region\" values, this will be \"Rest of Country\".",
+ "readOnly": true
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "The number of unique campaign opens for a region.",
+ "readOnly": true
+ },
+ "proxy_excluded_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Opens",
+ "description": "The number of unique campaign opens for a region excluding opens from email clients that use proxies.",
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Lists",
+ "description": "An array of objects, each representing a top location for opens."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_locations_for_campaign",
+ "methodNameCamel": "getLocationsForCampaign"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/sent-to": {
+ "get": {
+ "summary": "List campaign recipients",
+ "description": "Get information about campaign recipients.",
+ "operationId": "getReportsIdSentTo",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Sent-To",
+ "description": "A list of subscribers who were sent a specific campaign.",
+ "properties": {
+ "sent_to": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Sent To",
+ "description": "A subscriber's status for a specific campaign.",
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Delivery Status",
+ "description": "The status of the email delivered to this subscriber. `hard` and `soft` refer to different [bounce types](https://mailchimp.com/help/soft-vs-hard-bounces/).",
+ "enum": [
+ "sent",
+ "hard",
+ "soft"
+ ]
+ },
+ "open_count": {
+ "type": "integer",
+ "title": "Open Count",
+ "description": "The number of times a campaign was opened by this member."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The date and time of the last open for this member in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "absplit_group": {
+ "type": "string",
+ "title": "A/B Split Group",
+ "description": "For A/B Split Campaigns, the group the member was apart of.",
+ "enum": [
+ "a",
+ "b",
+ "winner"
+ ]
+ },
+ "gmt_offset": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "For campaigns sent with timewarp, the time zone group the member is apart of."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Sent To",
+ "description": "An array of objects, each representing a campaign recipient."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_recipients",
+ "methodNameCamel": "getCampaignRecipients"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/sent-to/{subscriber_hash}": {
+ "get": {
+ "summary": "Get campaign recipient info",
+ "description": "Get information about a specific campaign recipient.",
+ "operationId": "getReportsIdSentToId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Sent To",
+ "description": "A subscriber's status for a specific campaign.",
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Delivery Status",
+ "description": "The status of the email delivered to this subscriber. `hard` and `soft` refer to different [bounce types](https://mailchimp.com/help/soft-vs-hard-bounces/).",
+ "enum": [
+ "sent",
+ "hard",
+ "soft"
+ ]
+ },
+ "open_count": {
+ "type": "integer",
+ "title": "Open Count",
+ "description": "The number of times a campaign was opened by this member."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The date and time of the last open for this member in ISO 8601 format.",
+ "format": "date-time"
+ },
+ "absplit_group": {
+ "type": "string",
+ "title": "A/B Split Group",
+ "description": "For A/B Split Campaigns, the group the member was apart of.",
+ "enum": [
+ "a",
+ "b",
+ "winner"
+ ]
+ },
+ "gmt_offset": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "For campaigns sent with timewarp, the time zone group the member is apart of."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_campaign_recipient",
+ "methodNameCamel": "getCampaignRecipient"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/sub-reports": {
+ "get": {
+ "summary": "List child campaign reports",
+ "description": "Get a list of reports with child campaigns for a specific parent campaign.",
+ "operationId": "getReportsIdSubReportsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaign Sub-Reports",
+ "description": "A list of reports containing child campaigns for a specific campaign.",
+ "properties": {
+ "reports": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Campaign Report",
+ "description": "Report details about a sent campaign.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign."
+ },
+ "campaign_title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "The type of campaign (regular, plain-text, ab_split, rss, automation, variate, or auto)."
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign.",
+ "readOnly": true
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "The number of abuse reports generated for this campaign."
+ },
+ "unsubscribed": {
+ "type": "integer",
+ "title": "Unsubscribe Count",
+ "description": "The total number of unsubscribed members for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent in ISO 8601 format.",
+ "readOnly": true
+ },
+ "rss_last_send": {
+ "type": "string",
+ "format": "date-time",
+ "title": "RSS Last Send",
+ "description": "For RSS campaigns, the date and time of the last send in ISO 8601 format.",
+ "readOnly": true
+ },
+ "bounces": {
+ "type": "object",
+ "title": "Bounces",
+ "description": "An object describing the bounce summary for the campaign.",
+ "properties": {
+ "hard_bounces": {
+ "type": "integer",
+ "title": "Hard Bounces",
+ "description": "The total number of hard bounced email addresses."
+ },
+ "soft_bounces": {
+ "type": "integer",
+ "title": "Soft Bounces",
+ "description": "The total number of soft bounced email addresses."
+ },
+ "syntax_errors": {
+ "type": "integer",
+ "title": "Syntax Errors",
+ "description": "The total number of addresses that were syntax-related bounces."
+ }
+ }
+ },
+ "forwards": {
+ "type": "object",
+ "title": "Forwards",
+ "description": "An object describing the forwards and forward activity for the campaign.",
+ "properties": {
+ "forwards_count": {
+ "type": "integer",
+ "title": "Total Forwards",
+ "description": "How many times the campaign has been forwarded."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "How many times the forwarded campaign has been opened."
+ }
+ }
+ },
+ "opens": {
+ "type": "object",
+ "title": "Opens",
+ "description": "An object describing the open activity for the campaign.",
+ "properties": {
+ "opens_total": {
+ "type": "integer",
+ "title": "Total Opens",
+ "description": "The total number of opens for a campaign."
+ },
+ "proxy_excluded_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Opens",
+ "description": "The total number of opens for a campaign, excluding opens from email clients that use proxies."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The total number of unique opens for a campaign."
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Unique Opens",
+ "description": "The total number of unique opens for a campaign, excluding opens from email clients that use proxies."
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens for a campaign divided by the total number of successful deliveries."
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number",
+ "title": "Proxy Excluded Open Rate",
+ "description": "The average unique open rate for a campaign, excluding opens from email clients that use proxies."
+ },
+ "last_open": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Open",
+ "description": "The date and time of the last recorded open in ISO 8601 format."
+ }
+ }
+ },
+ "clicks": {
+ "type": "object",
+ "title": "Clicks",
+ "description": "An object describing the click activity for the campaign.",
+ "properties": {
+ "clicks_total": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for the campaign."
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "The total number of unique clicks for links across a campaign."
+ },
+ "unique_subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The total number of subscribers who clicked on a campaign."
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries."
+ },
+ "last_click": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Click",
+ "description": "The date and time of the last recorded click for the campaign in ISO 8601 format."
+ }
+ }
+ },
+ "facebook_likes": {
+ "type": "object",
+ "title": "Facebook Likes",
+ "description": "An object describing campaign engagement on Facebook.",
+ "properties": {
+ "recipient_likes": {
+ "type": "integer",
+ "title": "Recipient Likes",
+ "description": "The number of recipients who liked the campaign on Facebook."
+ },
+ "unique_likes": {
+ "type": "integer",
+ "title": "Unique Likes",
+ "description": "The number of unique likes."
+ },
+ "facebook_likes": {
+ "type": "integer",
+ "title": "Facebook Likes",
+ "description": "The number of Facebook likes for the campaign."
+ }
+ }
+ },
+ "industry_stats": {
+ "type": "object",
+ "title": "Industry Stats",
+ "description": "The average campaign statistics for your industry.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Industry Type",
+ "description": "The type of business industry associated with your account. For example: retail, education, etc."
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The industry open rate."
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The industry click rate."
+ },
+ "bounce_rate": {
+ "type": "number",
+ "title": "Bounce Rate",
+ "description": "The industry bounce rate."
+ },
+ "unopen_rate": {
+ "type": "number",
+ "title": "Unopened Rate",
+ "description": "The industry unopened rate."
+ },
+ "unsub_rate": {
+ "type": "number",
+ "title": "Unsubscribe Rate",
+ "description": "The industry unsubscribe rate."
+ },
+ "abuse_rate": {
+ "type": "number",
+ "title": "Abuse Rate",
+ "description": "The industry abuse rate."
+ }
+ }
+ },
+ "list_stats": {
+ "type": "object",
+ "title": "List Stats",
+ "description": "The average campaign statistics for your list. This won't be present if we haven't calculated it yet for this list.",
+ "properties": {
+ "sub_rate": {
+ "type": "number",
+ "title": "Average Subscription Rate",
+ "description": "The average number of subscriptions per month for the list.",
+ "readOnly": true
+ },
+ "unsub_rate": {
+ "type": "number",
+ "title": "Average Unsubscription Rate",
+ "description": "The average number of unsubscriptions per month for the list.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The average unique open rate (a percentage represented as a number between 0 and 100) per campaign for the list.",
+ "readOnly": true
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number",
+ "title": "Proxy Excluded Open Rate",
+ "description": "The average unique open rate (a percentage represented as a number between 0 and 100) per campaign for the list, excluding opens from email clients that use proxies.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The average click rate (a percentage represented as a number between 0 and 100) per campaign for the list.",
+ "readOnly": true
+ }
+ }
+ },
+ "ab_split": {
+ "type": "object",
+ "title": "A/B Split Stats",
+ "description": "General stats about different groups of an A/B Split campaign. Does not return information about Multivariate Campaigns.",
+ "properties": {
+ "a": {
+ "type": "object",
+ "title": "Campaign A",
+ "description": "Stats for Campaign A.",
+ "properties": {
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "Bounces for Campaign A."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "Abuse reports for Campaign A."
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "Unsubscribes for Campaign A."
+ },
+ "recipient_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "Recipient Clicks for Campaign A."
+ },
+ "forwards": {
+ "type": "integer",
+ "title": "Forwards",
+ "description": "Forwards for Campaign A."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "Opens from forwards for Campaign A."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "Opens for Campaign A."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The last open for Campaign A."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "Unique opens for Campaign A."
+ }
+ }
+ },
+ "b": {
+ "type": "object",
+ "title": "Campaign B",
+ "description": "Stats for Campaign B.",
+ "properties": {
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "Bounces for Campaign B."
+ },
+ "abuse_reports": {
+ "type": "integer",
+ "title": "Abuse Reports",
+ "description": "Abuse reports for Campaign B."
+ },
+ "unsubs": {
+ "type": "integer",
+ "title": "Unsubscribes",
+ "description": "Unsubscribes for Campaign B."
+ },
+ "recipient_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "Recipients clicks for Campaign B."
+ },
+ "forwards": {
+ "type": "integer",
+ "title": "Forwards",
+ "description": "Forwards for Campaign B."
+ },
+ "forwards_opens": {
+ "type": "integer",
+ "title": "Forward Opens",
+ "description": "Opens for forwards from Campaign B."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "Opens for Campaign B."
+ },
+ "last_open": {
+ "type": "string",
+ "title": "Last Open",
+ "description": "The last open for Campaign B."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "Unique opens for Campaign B."
+ }
+ }
+ }
+ }
+ },
+ "timewarp": {
+ "type": "array",
+ "title": "Timewarp Stats",
+ "description": "An hourly breakdown of sends, opens, and clicks if a campaign is sent using timewarp.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "gmt_offset": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "For campaigns sent with timewarp, the time zone group the member is apart of."
+ },
+ "opens": {
+ "type": "integer",
+ "title": "Opens",
+ "description": "The number of opens."
+ },
+ "last_open": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Open",
+ "description": "The date and time of the last open in ISO 8601 format."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens."
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The number of clicks."
+ },
+ "last_click": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Click",
+ "description": "The date and time of the last click in ISO 8601 format."
+ },
+ "unique_clicks": {
+ "type": "integer",
+ "title": "Unique Clicks",
+ "description": "The number of unique clicks."
+ },
+ "bounces": {
+ "type": "integer",
+ "title": "Bounces",
+ "description": "The number of bounces."
+ }
+ }
+ }
+ },
+ "timeseries": {
+ "type": "array",
+ "title": "Timeseries",
+ "description": "An hourly breakdown of the performance of the campaign over the first 24 hours.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "timestamp": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Timestamp",
+ "description": "The date and time for the series in ISO 8601 format."
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The number of emails sent in the timeseries."
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens in the timeseries."
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer",
+ "title": "Proxy Excluded Unique Opens",
+ "description": "The number of unique opens in the timeseries, excluding opens from email clients that use proxies."
+ },
+ "recipients_clicks": {
+ "type": "integer",
+ "title": "Recipient Clicks",
+ "description": "The number of clicks in the timeseries."
+ }
+ }
+ }
+ },
+ "share_report": {
+ "type": "object",
+ "title": "Share Report",
+ "description": "The url and password for the [VIP report](https://mailchimp.com/help/share-a-campaign-report/).",
+ "properties": {
+ "share_url": {
+ "type": "string",
+ "title": "Report URL",
+ "description": "The URL for the VIP report.",
+ "readOnly": true
+ },
+ "share_password": {
+ "type": "string",
+ "title": "Report Password",
+ "description": "If password protected, the password for the VIP report.",
+ "readOnly": true
+ }
+ }
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Three letter currency code for this user",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Reports",
+ "description": "An array of objects, each representing a report resource."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "Unique identifier of the parent campaign"
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_sub_reports_for_campaign",
+ "methodNameCamel": "getSubReportsForCampaign"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/unsubscribed": {
+ "get": {
+ "summary": "List unsubscribed members",
+ "description": "Get information about members who have unsubscribed from a specific campaign.",
+ "operationId": "getReportsIdUnsubscribed",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Unsubscribes",
+ "description": "A list of members who have unsubscribed from a specific campaign.",
+ "properties": {
+ "unsubscribes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Unsubscribes",
+ "description": "A member who unsubscribed from a specific campaign.",
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time the member opted-out in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "If available, the reason listed by the member for unsubscribing.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Lists",
+ "description": "An array of objects, each representing a member who unsubscribed from a campaign."
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_unsubscribed_list_for_campaign",
+ "methodNameCamel": "getUnsubscribedListForCampaign"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/unsubscribed/{subscriber_hash}": {
+ "get": {
+ "summary": "Get unsubscribed member",
+ "description": "Get information about a specific list member who unsubscribed from a campaign.",
+ "operationId": "getReportsIdUnsubscribedId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "in": "path",
+ "name": "subscriber_hash",
+ "x-title": "Subscriber Hash",
+ "type": "string",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Unsubscribes",
+ "description": "A member who unsubscribed from a specific campaign.",
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email Hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber.",
+ "readOnly": true
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.",
+ "readOnly": true
+ },
+ "timestamp": {
+ "type": "string",
+ "title": "Timestamp",
+ "description": "The date and time the member opted-out in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "If available, the reason listed by the member for unsubscribing.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "The campaign id.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_unsubscribed_list_member",
+ "methodNameCamel": "getUnsubscribedListMember"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reports/{campaign_id}/ecommerce-product-activity": {
+ "get": {
+ "description": "Get breakdown of product activity for a campaign",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "type": "string",
+ "required": true,
+ "description": "The unique id for the campaign."
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "title",
+ "total_revenue",
+ "total_purchased"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ecommerce Product Activity Instance",
+ "schema": {
+ "type": "object",
+ "description": "A collection of ecommerce products.",
+ "properties": {
+ "products": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "title": {
+ "type": "string"
+ },
+ "sku": {
+ "type": "string"
+ },
+ "image_url": {
+ "type": "string"
+ },
+ "total_revenue": {
+ "type": "number"
+ },
+ "total_purchased": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ },
+ "recommendation_total": {
+ "type": "integer"
+ },
+ "recommendation_purchased": {
+ "type": "integer"
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reports"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_ecommerce_product_activity_for_campaign",
+ "methodNameCamel": "getEcommerceProductActivityForCampaign"
+ },
+ "summary": "List campaign product activity",
+ "operationId": "getReportsIdEcommerceProductActivity",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/templates": {
+ "get": {
+ "summary": "List templates",
+ "description": "Get a list of an account's available templates.",
+ "operationId": "getTemplates",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "created_by",
+ "x-title": "Created By",
+ "in": "query",
+ "description": "The Mailchimp account user who created the template.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "since_date_created",
+ "x-title": "Since Date Created",
+ "in": "query",
+ "description": "Restrict the response to templates created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "before_date_created",
+ "x-title": "Before Date Created",
+ "in": "query",
+ "description": "Restrict the response to templates created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "type",
+ "x-title": "Template Type",
+ "in": "query",
+ "required": false,
+ "description": "Limit results based on template type.",
+ "type": "string"
+ },
+ {
+ "name": "category",
+ "x-title": "Category",
+ "in": "query",
+ "description": "Limit results based on category.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "folder_id",
+ "x-title": "Folder ID",
+ "in": "query",
+ "description": "The unique folder id.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns user templates sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "date_created",
+ "date_edited",
+ "name"
+ ]
+ },
+ {
+ "name": "content_type",
+ "x-title": "Content Type",
+ "in": "query",
+ "required": false,
+ "description": "Limit results based on how the template's content is put together. Only templates of type `user` can be filtered by `content_type`. If you want to retrieve saved templates created with the legacy email editor, then filter `content_type` to `template`. If you'd rather pull your saved templates for the new editor, filter to `multichannel`. For code your own templates, filter to `html`.",
+ "type": "string",
+ "enum": [
+ "html",
+ "template",
+ "multichannel"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Templates",
+ "description": "A list an account's available templates.",
+ "properties": {
+ "templates": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Template Instance",
+ "description": "Information about a specific template.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The individual id for the template.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Template Type",
+ "description": "The type of template (user, base, or gallery).",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template."
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag and Drop",
+ "description": "Whether the template uses the drag and drop editor.",
+ "readOnly": true
+ },
+ "responsive": {
+ "type": "boolean",
+ "title": "Responsive",
+ "description": "Whether the template contains media queries to make it responsive.",
+ "readOnly": true
+ },
+ "category": {
+ "type": "string",
+ "title": "Template Category",
+ "description": "If available, the category the template is listed in.",
+ "readOnly": true
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the template was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "date_edited": {
+ "type": "string",
+ "title": "Date Edited",
+ "description": "The date and time the template was edited in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name for template's creator.",
+ "readOnly": true
+ },
+ "edited_by": {
+ "type": "string",
+ "title": "Edited By",
+ "description": "The login name who last edited the template.",
+ "readOnly": true
+ },
+ "active": {
+ "type": "boolean",
+ "title": "Active",
+ "description": "User templates are not 'deleted,' but rather marked as 'inactive.' Returns whether the template is still active.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in."
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Template Thumbnail",
+ "description": "If available, the URL for a thumbnail of the template.",
+ "readOnly": true
+ },
+ "share_url": {
+ "type": "string",
+ "title": "Share URL",
+ "description": "The URL used for [template sharing](https://mailchimp.com/help/share-a-template/).",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the template's content is put together.",
+ "enum": [
+ "template",
+ "multichannel",
+ "html"
+ ],
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "User Templates",
+ "description": "All of an account's saved or custom templates."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templates"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add template",
+ "description": "Create a new template for the account. Only Classic templates are supported.",
+ "operationId": "postTemplates",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Instance",
+ "description": "Information about a specific template.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The individual id for the template.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Template Type",
+ "description": "The type of template (user, base, or gallery).",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template."
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag and Drop",
+ "description": "Whether the template uses the drag and drop editor.",
+ "readOnly": true
+ },
+ "responsive": {
+ "type": "boolean",
+ "title": "Responsive",
+ "description": "Whether the template contains media queries to make it responsive.",
+ "readOnly": true
+ },
+ "category": {
+ "type": "string",
+ "title": "Template Category",
+ "description": "If available, the category the template is listed in.",
+ "readOnly": true
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the template was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "date_edited": {
+ "type": "string",
+ "title": "Date Edited",
+ "description": "The date and time the template was edited in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name for template's creator.",
+ "readOnly": true
+ },
+ "edited_by": {
+ "type": "string",
+ "title": "Edited By",
+ "description": "The login name who last edited the template.",
+ "readOnly": true
+ },
+ "active": {
+ "type": "boolean",
+ "title": "Active",
+ "description": "User templates are not 'deleted,' but rather marked as 'inactive.' Returns whether the template is still active.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in."
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Template Thumbnail",
+ "description": "If available, the URL for a thumbnail of the template.",
+ "readOnly": true
+ },
+ "share_url": {
+ "type": "string",
+ "title": "Share URL",
+ "description": "The URL used for [template sharing](https://mailchimp.com/help/share-a-template/).",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the template's content is put together.",
+ "enum": [
+ "template",
+ "multichannel",
+ "html"
+ ],
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templates"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create",
+ "methodNameCamel": "create"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Template Instance",
+ "description": "Information about a specific template.",
+ "required": [
+ "name",
+ "html"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template.",
+ "example": "Freddie's Jokes"
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in.",
+ "example": "a4b830b"
+ },
+ "html": {
+ "type": "string",
+ "title": "Template HTML",
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/templates/{template_id}": {
+ "get": {
+ "summary": "Get template info",
+ "description": "Get information about a specific template.",
+ "operationId": "getTemplatesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "template_id",
+ "x-title": "Template ID",
+ "in": "path",
+ "description": "The unique id for the template.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Instance",
+ "description": "Information about a specific template.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The individual id for the template.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Template Type",
+ "description": "The type of template (user, base, or gallery).",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template."
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag and Drop",
+ "description": "Whether the template uses the drag and drop editor.",
+ "readOnly": true
+ },
+ "responsive": {
+ "type": "boolean",
+ "title": "Responsive",
+ "description": "Whether the template contains media queries to make it responsive.",
+ "readOnly": true
+ },
+ "category": {
+ "type": "string",
+ "title": "Template Category",
+ "description": "If available, the category the template is listed in.",
+ "readOnly": true
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the template was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "date_edited": {
+ "type": "string",
+ "title": "Date Edited",
+ "description": "The date and time the template was edited in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name for template's creator.",
+ "readOnly": true
+ },
+ "edited_by": {
+ "type": "string",
+ "title": "Edited By",
+ "description": "The login name who last edited the template.",
+ "readOnly": true
+ },
+ "active": {
+ "type": "boolean",
+ "title": "Active",
+ "description": "User templates are not 'deleted,' but rather marked as 'inactive.' Returns whether the template is still active.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in."
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Template Thumbnail",
+ "description": "If available, the URL for a thumbnail of the template.",
+ "readOnly": true
+ },
+ "share_url": {
+ "type": "string",
+ "title": "Share URL",
+ "description": "The URL used for [template sharing](https://mailchimp.com/help/share-a-template/).",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the template's content is put together.",
+ "enum": [
+ "template",
+ "multichannel",
+ "html"
+ ],
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templates"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_template",
+ "methodNameCamel": "getTemplate"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update template",
+ "description": "Update the name, HTML, or `folder_id` of an existing template.",
+ "operationId": "patchTemplatesId",
+ "parameters": [
+ {
+ "name": "template_id",
+ "x-title": "Template ID",
+ "in": "path",
+ "description": "The unique id for the template.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Instance",
+ "description": "Information about a specific template.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The individual id for the template.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Template Type",
+ "description": "The type of template (user, base, or gallery).",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template."
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag and Drop",
+ "description": "Whether the template uses the drag and drop editor.",
+ "readOnly": true
+ },
+ "responsive": {
+ "type": "boolean",
+ "title": "Responsive",
+ "description": "Whether the template contains media queries to make it responsive.",
+ "readOnly": true
+ },
+ "category": {
+ "type": "string",
+ "title": "Template Category",
+ "description": "If available, the category the template is listed in.",
+ "readOnly": true
+ },
+ "date_created": {
+ "type": "string",
+ "title": "Date Created",
+ "description": "The date and time the template was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "date_edited": {
+ "type": "string",
+ "title": "Date Edited",
+ "description": "The date and time the template was edited in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Created By",
+ "description": "The login name for template's creator.",
+ "readOnly": true
+ },
+ "edited_by": {
+ "type": "string",
+ "title": "Edited By",
+ "description": "The login name who last edited the template.",
+ "readOnly": true
+ },
+ "active": {
+ "type": "boolean",
+ "title": "Active",
+ "description": "User templates are not 'deleted,' but rather marked as 'inactive.' Returns whether the template is still active.",
+ "readOnly": true
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in."
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Template Thumbnail",
+ "description": "If available, the URL for a thumbnail of the template.",
+ "readOnly": true
+ },
+ "share_url": {
+ "type": "string",
+ "title": "Share URL",
+ "description": "The URL used for [template sharing](https://mailchimp.com/help/share-a-template/).",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the template's content is put together.",
+ "enum": [
+ "template",
+ "multichannel",
+ "html"
+ ],
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templates"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_template",
+ "methodNameCamel": "updateTemplate"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Template Instance",
+ "description": "Information about a specific template.",
+ "required": [
+ "name",
+ "html"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Template Name",
+ "description": "The name of the template.",
+ "example": "Freddie's Jokes"
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "The id of the folder the template is currently in.",
+ "example": "a4b830b"
+ },
+ "html": {
+ "type": "string",
+ "title": "Template HTML",
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete template",
+ "description": "Delete a specific template.",
+ "operationId": "deleteTemplatesId",
+ "parameters": [
+ {
+ "name": "template_id",
+ "x-title": "Template ID",
+ "in": "path",
+ "description": "The unique id for the template.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templates"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_template",
+ "methodNameCamel": "deleteTemplate"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/templates/{template_id}/default-content": {
+ "get": {
+ "summary": "View default content",
+ "description": "Get the sections that you can edit in a template, including each section's default content.",
+ "operationId": "getTemplatesIdDefaultContent",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "template_id",
+ "x-title": "Template ID",
+ "in": "path",
+ "description": "The unique id for the template.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Template Default Content",
+ "description": "Default content for a template.",
+ "properties": {
+ "sections": {
+ "type": "object",
+ "title": "Sections",
+ "description": "The sections that you can edit in the template, including each section's default content.",
+ "additionalProperties": {
+ "description": "The default content for the sections that you can edit in the template."
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "templates"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_default_content_for_template",
+ "methodNameCamel": "getDefaultContentForTemplate"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/orders": {
+ "get": {
+ "summary": "List account orders",
+ "description": "Get information about an account's orders.",
+ "operationId": "getEcommerceOrders",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "in": "query",
+ "description": "Restrict results to orders with a specific `campaign_id` value.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "outreach_id",
+ "x-title": "Outreach ID",
+ "in": "query",
+ "description": "Restrict results to orders with a specific `outreach_id` value.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "customer_id",
+ "x-title": "Customer ID",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to orders made by a specific customer.",
+ "type": "string"
+ },
+ {
+ "name": "has_outreach",
+ "x-title": "Has Outreach",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad.",
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Orders",
+ "description": "A collection of orders in an account.",
+ "properties": {
+ "orders": {
+ "type": "array",
+ "title": "Orders",
+ "description": "An array of objects, each representing an order resource.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ },
+ "name": {
+ "type": "string",
+ "title": "Outreach name",
+ "description": "The name for the outreach.",
+ "example": "Freddie's Jokes",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach type",
+ "description": "The type of the outreach.",
+ "example": "regular",
+ "readOnly": true
+ },
+ "published_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Outreach published time",
+ "description": "The date and time the Outreach was published in ISO 8601 format.",
+ "example": "2017-06-06T13:56:12+00:00",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "orders",
+ "methodNameCamel": "orders"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores": {
+ "get": {
+ "summary": "List stores",
+ "description": "Get information about all stores in the account.",
+ "operationId": "getEcommerceStores",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Stores",
+ "description": "A collection of stores in the account.",
+ "properties": {
+ "stores": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true,
+ "example": "example_store"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier for the list that's associated with the store. The `list_id` for a specific store can't change.",
+ "readOnly": true,
+ "example": "1a2df69511"
+ },
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain. The store domain must be unique within a user account.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ },
+ "connected_site": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "The Connected Site associated with the store.",
+ "readOnly": true,
+ "properties": {
+ "site_foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the connected site.",
+ "readOnly": true,
+ "example": "a180c384d7db88b if created in-app, MC001 if created via API"
+ },
+ "site_script": {
+ "type": "object",
+ "title": "Script",
+ "description": "The script used to connect your site with Mailchimp.",
+ "readOnly": true,
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "Script URL",
+ "description": "The URL used for any integrations that offer built-in support for connected sites.",
+ "readOnly": true,
+ "example": "https://chimpstatic.com/mcjs-connected/js/users/{user-hash}/{site-hash}.js"
+ },
+ "fragment": {
+ "type": "string",
+ "title": "Script Fragment",
+ "description": "A pre-built script that you can copy-and-paste into your site to integrate it with Mailchimp.",
+ "readOnly": true,
+ "example": ""
+ }
+ }
+ }
+ }
+ },
+ "automations": {
+ "type": "object",
+ "title": "Automations",
+ "description": "Details for the automations attached to this store.",
+ "readOnly": true,
+ "properties": {
+ "abandoned_cart": {
+ "type": "object",
+ "title": "Abandoned Cart Automation",
+ "description": "abandonedCart automation details.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedCart automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedCart automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ },
+ "abandoned_browse": {
+ "type": "object",
+ "title": "Abandoned Browse Automation",
+ "description": "abandonedBrowse automation details. abandonedBrowse is also known as Product Retargeting Email or Retarget Site Visitors on the web.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedBrowse automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedBrowse automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ }
+ }
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list connected to the store, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the store was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the store was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Stores",
+ "description": "An array of objects, each representing a store."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "stores",
+ "methodNameCamel": "stores"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add store",
+ "description": "Add a new store to your Mailchimp account.",
+ "operationId": "postEcommerceStores",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true,
+ "example": "example_store"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier for the list that's associated with the store. The `list_id` for a specific store can't change.",
+ "readOnly": true,
+ "example": "1a2df69511"
+ },
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain. The store domain must be unique within a user account.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ },
+ "connected_site": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "The Connected Site associated with the store.",
+ "readOnly": true,
+ "properties": {
+ "site_foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the connected site.",
+ "readOnly": true,
+ "example": "a180c384d7db88b if created in-app, MC001 if created via API"
+ },
+ "site_script": {
+ "type": "object",
+ "title": "Script",
+ "description": "The script used to connect your site with Mailchimp.",
+ "readOnly": true,
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "Script URL",
+ "description": "The URL used for any integrations that offer built-in support for connected sites.",
+ "readOnly": true,
+ "example": "https://chimpstatic.com/mcjs-connected/js/users/{user-hash}/{site-hash}.js"
+ },
+ "fragment": {
+ "type": "string",
+ "title": "Script Fragment",
+ "description": "A pre-built script that you can copy-and-paste into your site to integrate it with Mailchimp.",
+ "readOnly": true,
+ "example": ""
+ }
+ }
+ }
+ }
+ },
+ "automations": {
+ "type": "object",
+ "title": "Automations",
+ "description": "Details for the automations attached to this store.",
+ "readOnly": true,
+ "properties": {
+ "abandoned_cart": {
+ "type": "object",
+ "title": "Abandoned Cart Automation",
+ "description": "abandonedCart automation details.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedCart automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedCart automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ },
+ "abandoned_browse": {
+ "type": "object",
+ "title": "Abandoned Browse Automation",
+ "description": "abandonedBrowse automation details. abandonedBrowse is also known as Product Retargeting Email or Retarget Site Visitors on the web.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedBrowse automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedBrowse automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ }
+ }
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list connected to the store, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the store was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the store was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_store",
+ "methodNameCamel": "addStore"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "required": [
+ "id",
+ "list_id",
+ "name",
+ "currency_code"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "example": "example_store"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change.",
+ "example": "1a2df69511"
+ },
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain. This parameter is required for Connected Sites and Google Ads.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}": {
+ "get": {
+ "summary": "Get store info",
+ "description": "Get information about a specific store.",
+ "operationId": "getEcommerceStoresId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true,
+ "example": "example_store"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier for the list that's associated with the store. The `list_id` for a specific store can't change.",
+ "readOnly": true,
+ "example": "1a2df69511"
+ },
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain. The store domain must be unique within a user account.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ },
+ "connected_site": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "The Connected Site associated with the store.",
+ "readOnly": true,
+ "properties": {
+ "site_foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the connected site.",
+ "readOnly": true,
+ "example": "a180c384d7db88b if created in-app, MC001 if created via API"
+ },
+ "site_script": {
+ "type": "object",
+ "title": "Script",
+ "description": "The script used to connect your site with Mailchimp.",
+ "readOnly": true,
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "Script URL",
+ "description": "The URL used for any integrations that offer built-in support for connected sites.",
+ "readOnly": true,
+ "example": "https://chimpstatic.com/mcjs-connected/js/users/{user-hash}/{site-hash}.js"
+ },
+ "fragment": {
+ "type": "string",
+ "title": "Script Fragment",
+ "description": "A pre-built script that you can copy-and-paste into your site to integrate it with Mailchimp.",
+ "readOnly": true,
+ "example": ""
+ }
+ }
+ }
+ }
+ },
+ "automations": {
+ "type": "object",
+ "title": "Automations",
+ "description": "Details for the automations attached to this store.",
+ "readOnly": true,
+ "properties": {
+ "abandoned_cart": {
+ "type": "object",
+ "title": "Abandoned Cart Automation",
+ "description": "abandonedCart automation details.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedCart automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedCart automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ },
+ "abandoned_browse": {
+ "type": "object",
+ "title": "Abandoned Browse Automation",
+ "description": "abandonedBrowse automation details. abandonedBrowse is also known as Product Retargeting Email or Retarget Site Visitors on the web.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedBrowse automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedBrowse automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ }
+ }
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list connected to the store, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the store was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the store was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_store",
+ "methodNameCamel": "getStore"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update store",
+ "description": "Update a store.",
+ "operationId": "patchEcommerceStoresId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true,
+ "example": "example_store"
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique identifier for the list that's associated with the store. The `list_id` for a specific store can't change.",
+ "readOnly": true,
+ "example": "1a2df69511"
+ },
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain. The store domain must be unique within a user account.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ },
+ "connected_site": {
+ "type": "object",
+ "title": "Connected Site",
+ "description": "The Connected Site associated with the store.",
+ "readOnly": true,
+ "properties": {
+ "site_foreign_id": {
+ "type": "string",
+ "title": "Connected Site Foreign ID",
+ "description": "The unique identifier for the connected site.",
+ "readOnly": true,
+ "example": "a180c384d7db88b if created in-app, MC001 if created via API"
+ },
+ "site_script": {
+ "type": "object",
+ "title": "Script",
+ "description": "The script used to connect your site with Mailchimp.",
+ "readOnly": true,
+ "properties": {
+ "url": {
+ "type": "string",
+ "title": "Script URL",
+ "description": "The URL used for any integrations that offer built-in support for connected sites.",
+ "readOnly": true,
+ "example": "https://chimpstatic.com/mcjs-connected/js/users/{user-hash}/{site-hash}.js"
+ },
+ "fragment": {
+ "type": "string",
+ "title": "Script Fragment",
+ "description": "A pre-built script that you can copy-and-paste into your site to integrate it with Mailchimp.",
+ "readOnly": true,
+ "example": ""
+ }
+ }
+ }
+ }
+ },
+ "automations": {
+ "type": "object",
+ "title": "Automations",
+ "description": "Details for the automations attached to this store.",
+ "readOnly": true,
+ "properties": {
+ "abandoned_cart": {
+ "type": "object",
+ "title": "Abandoned Cart Automation",
+ "description": "abandonedCart automation details.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedCart automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedCart automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ },
+ "abandoned_browse": {
+ "type": "object",
+ "title": "Abandoned Browse Automation",
+ "description": "abandonedBrowse automation details. abandonedBrowse is also known as Product Retargeting Email or Retarget Site Visitors on the web.",
+ "readOnly": true,
+ "properties": {
+ "is_supported": {
+ "type": "boolean",
+ "title": "Is Supported",
+ "description": "Whether this store supports the abandonedBrowse automation.",
+ "readOnly": true,
+ "example": false
+ },
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of automation parent campaign.",
+ "readOnly": true,
+ "example": "355a72bfc3"
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Status of the abandonedBrowse automation.",
+ "enum": [
+ "save",
+ "sending",
+ "paused"
+ ],
+ "readOnly": true,
+ "example": "sending"
+ }
+ }
+ }
+ }
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list connected to the store, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the store was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the store was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_store",
+ "methodNameCamel": "updateStore"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Store",
+ "description": "An individual store in an account.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Store Name",
+ "description": "The name of the store.",
+ "example": "Freddie's Cat Hat Emporium"
+ },
+ "platform": {
+ "type": "string",
+ "title": "Platform",
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "type": "string",
+ "title": "Domain",
+ "description": "The store domain.",
+ "example": "example.com"
+ },
+ "is_syncing": {
+ "type": "boolean",
+ "title": "Is Syncing",
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The email address for the store.",
+ "example": "freddie@mailchimp.com"
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "example": "USD"
+ },
+ "money_format": {
+ "type": "string",
+ "title": "Money Format",
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.",
+ "example": "$"
+ },
+ "primary_locale": {
+ "type": "string",
+ "title": "Primary Locale",
+ "description": "The primary locale for the store. For example: `en`, `de`, etc.",
+ "example": "fr"
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the store.",
+ "example": "Eastern"
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone",
+ "description": "The store phone number.",
+ "example": "+16155550128"
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The store address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The store's mailing address.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the store's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the store is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The store's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the store's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The store's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The store's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for to the store's country.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude of the store location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude of the store location.",
+ "example": 45.427408
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete store",
+ "description": "Delete a store. Deleting a store will also delete any associated subresources, including Customers, Orders, Products, and Carts.",
+ "operationId": "deleteEcommerceStoresId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response",
+ "schema": {
+ "description": "Empty Response"
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_store",
+ "methodNameCamel": "deleteStore"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/carts": {
+ "get": {
+ "summary": "List carts",
+ "description": "Get information about a store's carts.",
+ "operationId": "getEcommerceStoresIdCarts",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Carts",
+ "description": "A collection of a store's carts.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "carts": {
+ "type": "array",
+ "title": "E-commerce Store Carts",
+ "description": "An array of objects, each representing a cart.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Foreign ID",
+ "description": "A unique identifier for the cart.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the cart was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the cart was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_store_carts",
+ "methodNameCamel": "getStoreCarts"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add cart",
+ "description": "Add a new cart to a store.",
+ "operationId": "postEcommerceStoresIdCarts",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Foreign ID",
+ "description": "A unique identifier for the cart.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the cart was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the cart was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_store_cart",
+ "methodNameCamel": "addStoreCart"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "required": [
+ "id",
+ "currency_code",
+ "customer",
+ "order_total",
+ "lines"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Foreign ID",
+ "description": "A unique identifier for the cart."
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters.",
+ "maxLength": 50
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign for a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "required": [
+ "id",
+ "product_id",
+ "product_variant_id",
+ "quantity",
+ "price"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/carts/{cart_id}": {
+ "get": {
+ "summary": "Get cart info",
+ "description": "Get information about a specific cart.",
+ "operationId": "getEcommerceStoresIdCartsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Foreign ID",
+ "description": "A unique identifier for the cart.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the cart was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the cart was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_store_cart",
+ "methodNameCamel": "getStoreCart"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update cart",
+ "description": "Update a specific cart.",
+ "operationId": "patchEcommerceStoresIdCartsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Foreign ID",
+ "description": "A unique identifier for the cart.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the cart was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the cart was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_store_cart",
+ "methodNameCamel": "updateStoreCart"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart",
+ "description": "Information about a specific cart.",
+ "properties": {
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with a cart.",
+ "example": "839488a60b"
+ },
+ "checkout_url": {
+ "type": "string",
+ "title": "Checkout URL",
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Cart Line Items",
+ "description": "An array of the cart's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete cart",
+ "description": "Delete a cart.",
+ "operationId": "deleteEcommerceStoresIdCartsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_store_cart",
+ "methodNameCamel": "deleteStoreCart"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/carts/{cart_id}/lines": {
+ "get": {
+ "summary": "List cart line items",
+ "description": "Get information about a cart's line items.",
+ "operationId": "getEcommerceStoresIdCartsIdLines",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Cart Lines",
+ "description": "A collection of a cart's line items.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "The cart id."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Ecommerce Cart Lines",
+ "description": "An array of objects, each representing a cart's line item.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all_cart_line_items",
+ "methodNameCamel": "getAllCartLineItems"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add cart line item",
+ "description": "Add a new line item to an existing cart.",
+ "operationId": "postEcommerceStoresIdCartsIdLines",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_cart_line_item",
+ "methodNameCamel": "addCartLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "required": [
+ "id",
+ "product_id",
+ "product_variant_id",
+ "quantity",
+ "price"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}": {
+ "get": {
+ "summary": "Get cart line item",
+ "description": "Get information about a specific cart line item.",
+ "operationId": "getEcommerceStoresIdCartsIdLinesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "line_id",
+ "x-title": "Cart Line ID",
+ "description": "The id for the line item of a cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_cart_line_item",
+ "methodNameCamel": "getCartLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update cart line item",
+ "description": "Update a specific cart line item.",
+ "operationId": "patchEcommerceStoresIdCartsIdLinesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "line_id",
+ "x-title": "Cart Line ID",
+ "description": "The id for the line item of a cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Cart Line Item Foreign ID",
+ "description": "A unique identifier for the cart line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Cart Line Product Title",
+ "description": "The name of the product for the cart line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Cart Line Product Variant Title",
+ "description": "The name of the product variant for the cart line item.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_cart_line_item",
+ "methodNameCamel": "updateCartLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Cart Line Item",
+ "description": "Information about a specific cart line item.",
+ "properties": {
+ "product_id": {
+ "type": "string",
+ "title": "Cart Line Product Foreign ID",
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Cart Line Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a cart line item."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete cart line item",
+ "description": "Delete a specific cart line item.",
+ "operationId": "deleteEcommerceStoresIdCartsLinesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "cart_id",
+ "x-title": "Cart ID",
+ "description": "The id for the cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "line_id",
+ "x-title": "Cart Line ID",
+ "description": "The id for the line item of a cart.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_cart_line_item",
+ "methodNameCamel": "deleteCartLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/customers": {
+ "get": {
+ "summary": "List customers",
+ "description": "Get information about a store's customers.",
+ "operationId": "getEcommerceStoresIdCustomers",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "email_address",
+ "x-title": "Customer Email Address",
+ "in": "query",
+ "description": "Restrict the response to customers with the email address.",
+ "type": "string",
+ "required": false
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Customers",
+ "description": "A collection of the store's customers.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "customers": {
+ "type": "array",
+ "title": "Customers",
+ "description": "An array of objects, each representing a customer of a store.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all_store_customers",
+ "methodNameCamel": "getAllStoreCustomers"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add customer",
+ "description": "Add a new customer to a store.",
+ "operationId": "postEcommerceStoresIdCustomers",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_store_customer",
+ "methodNameCamel": "addStoreCustomer"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "required": [
+ "id",
+ "opt_in_status"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters.",
+ "maxLength": 50
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/customers/{customer_id}": {
+ "get": {
+ "summary": "Get customer info",
+ "description": "Get information about a specific customer.",
+ "operationId": "getEcommerceStoresIdCustomersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "customer_id",
+ "x-title": "Customer ID",
+ "description": "The id for the customer of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_store_customer",
+ "methodNameCamel": "getStoreCustomer"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "put": {
+ "summary": "Add or update customer",
+ "description": "Add or update a customer.",
+ "operationId": "putEcommerceStoresIdCustomersId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "customer_id",
+ "x-title": "Customer ID",
+ "description": "The id for the customer of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "set_store_customer",
+ "methodNameCamel": "setStoreCustomer"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "required": [
+ "id",
+ "opt_in_status"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters.",
+ "maxLength": 50
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "patch": {
+ "summary": "Update customer",
+ "description": "Update a customer.",
+ "operationId": "patchEcommerceStoresIdCustomersId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "customer_id",
+ "x-title": "Customer ID",
+ "description": "The id for the customer of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_store_customer",
+ "methodNameCamel": "updateStoreCustomer"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete customer",
+ "description": "Delete a customer from a store.",
+ "operationId": "deleteEcommerceStoresIdCustomersId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "customer_id",
+ "x-title": "Customer ID",
+ "description": "The id for the customer of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_store_customer",
+ "methodNameCamel": "deleteStoreCustomer"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/promo-rules": {
+ "get": {
+ "summary": "List promo rules",
+ "description": "Get information about a store's promo rules.",
+ "operationId": "getEcommerceStoresIdPromorules",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Promo Rules",
+ "description": "A collection of the store's promo rules.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "promo_rules": {
+ "type": "array",
+ "title": "Promo Rules",
+ "description": "An array of objects, each representing promo rules defined for a store.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Rule Foreign ID",
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "type": "string",
+ "format": "Promo date-time",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "format": "float",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list_promo_rules",
+ "methodNameCamel": "listPromoRules"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add promo rule",
+ "description": "Add a new promo rule to a store.",
+ "operationId": "postEcommerceStoresIdPromorules",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Rule Foreign ID",
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "type": "string",
+ "format": "Promo date-time",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "format": "float",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_promo_rules",
+ "methodNameCamel": "addPromoRules"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule.",
+ "required": [
+ "id",
+ "description",
+ "amount",
+ "type",
+ "target"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Rule Foreign ID",
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "type": "string",
+ "format": "Promo date-time",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "format": "float",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}": {
+ "get": {
+ "summary": "Get promo rule",
+ "description": "Get information about a specific promo rule.",
+ "operationId": "getEcommerceStoresIdPromorulesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Rule Foreign ID",
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "type": "string",
+ "format": "Promo date-time",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "format": "float",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_promo_rule",
+ "methodNameCamel": "getPromoRule"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update promo rule",
+ "description": "Update a promo rule.",
+ "operationId": "patchEcommerceStoresIdPromorulesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Rule Foreign ID",
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "type": "string",
+ "format": "Promo date-time",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "format": "float",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_promo_rule",
+ "methodNameCamel": "updatePromoRule"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Rule",
+ "description": "Information about an Ecommerce Store's specific Promo Rule.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.",
+ "example": "50% off Total Order"
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255.",
+ "example": "Save BIG during our summer sale!"
+ },
+ "starts_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Promo Start Time",
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "type": "string",
+ "format": "Promo date-time",
+ "title": "End Time",
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "type": "number",
+ "title": "Amount",
+ "format": "float",
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.",
+ "example": 0.5
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed.",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ },
+ "target": {
+ "type": "string",
+ "title": "Target",
+ "description": "The target that the discount applies to.",
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ]
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo rule is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete promo rule",
+ "description": "Delete a promo rule from a store.",
+ "operationId": "deleteEcommerceStoresIdPromorulesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_promo_rule",
+ "methodNameCamel": "deletePromoRule"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes": {
+ "get": {
+ "summary": "List promo codes",
+ "description": "Get information about a store's promo codes.",
+ "operationId": "getEcommerceStoresIdPromocodes",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Promo Codes",
+ "description": "A collection of the store's promo codes.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "promo_codes": {
+ "type": "array",
+ "title": "Promo Codes",
+ "description": "An array of objects, each representing promo codes defined for a store.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Promo Code",
+ "description": "Information about an Ecommerce Store's specific Promo Code",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Code Foreign ID",
+ "description": "A unique identifier for the promo Code.",
+ "readOnly": true
+ },
+ "code": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "redemption_url": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "usage_count": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_promo_codes",
+ "methodNameCamel": "getPromoCodes"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add promo code",
+ "description": "Add a new promo code to a store.",
+ "operationId": "postEcommerceStoresIdPromocodes",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Code",
+ "description": "Information about an Ecommerce Store's specific Promo Code",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Code Foreign ID",
+ "description": "A unique identifier for the promo Code.",
+ "readOnly": true
+ },
+ "code": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "redemption_url": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "usage_count": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_promo_code",
+ "methodNameCamel": "addPromoCode"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Code",
+ "description": "Information about an Ecommerce Store's specific Promo Code.",
+ "required": [
+ "id",
+ "code",
+ "redemption_url"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Code Foreign ID",
+ "description": "A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50."
+ },
+ "code": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "redemption_url": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "usage_count": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}": {
+ "get": {
+ "summary": "Get promo code",
+ "description": "Get information about a specific promo code.",
+ "operationId": "getEcommerceStoresIdPromocodesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_code_id",
+ "x-title": "Promo Code ID",
+ "description": "The id for the promo code of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Code",
+ "description": "Information about an Ecommerce Store's specific Promo Code",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Code Foreign ID",
+ "description": "A unique identifier for the promo Code.",
+ "readOnly": true
+ },
+ "code": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "redemption_url": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "usage_count": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_promo_code",
+ "methodNameCamel": "getPromoCode"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update promo code",
+ "description": "Update a promo code.",
+ "operationId": "patchEcommerceStoresIdPromocodesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_code_id",
+ "x-title": "Promo Code ID",
+ "description": "The id for the promo code of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Code",
+ "description": "Information about an Ecommerce Store's specific Promo Code",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Promo Code Foreign ID",
+ "description": "A unique identifier for the promo Code.",
+ "readOnly": true
+ },
+ "code": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "redemption_url": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "usage_count": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_promo_code",
+ "methodNameCamel": "updatePromoCode"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Promo Code",
+ "description": "Information about an Ecommerce Store's specific Promo Code.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Promo Code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "example": "summersale"
+ },
+ "redemption_url": {
+ "type": "string",
+ "title": "Redemption Url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "example": "A url that applies promo code directly at checkout or a url that points to sale page or store url"
+ },
+ "usage_count": {
+ "type": "integer",
+ "title": "Promo Code Usage Count",
+ "description": "Number of times promo code has been used."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "example": "true"
+ },
+ "created_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Create Time",
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Foreign Update Time",
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete promo code",
+ "description": "Delete a promo code from a store.",
+ "operationId": "deleteEcommerceStoresIdPromocodesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_rule_id",
+ "x-title": "Promo Rule ID",
+ "description": "The id for the promo rule of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "promo_code_id",
+ "x-title": "Promo Code ID",
+ "description": "The id for the promo code of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_promo_code",
+ "methodNameCamel": "deletePromoCode"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/orders": {
+ "get": {
+ "summary": "List orders",
+ "description": "Get information about a store's orders.",
+ "operationId": "getEcommerceStoresIdOrders",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "customer_id",
+ "x-title": "Customer ID",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to orders made by a specific customer.",
+ "type": "string"
+ },
+ {
+ "name": "has_outreach",
+ "x-title": "Has Outreach",
+ "in": "query",
+ "required": false,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad.",
+ "type": "boolean"
+ },
+ {
+ "name": "campaign_id",
+ "x-title": "Campaign ID",
+ "in": "query",
+ "description": "Restrict results to orders with a specific `campaign_id` value.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "outreach_id",
+ "x-title": "Outreach ID",
+ "in": "query",
+ "description": "Restrict results to orders with a specific `outreach_id` value.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Orders",
+ "description": "A collection of orders in a store.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The unique identifier for the store."
+ },
+ "orders": {
+ "type": "array",
+ "title": "Orders",
+ "description": "An array of objects, each representing an order in a store.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ },
+ "name": {
+ "type": "string",
+ "title": "Outreach name",
+ "description": "The name for the outreach.",
+ "example": "Freddie's Jokes",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach type",
+ "description": "The type of the outreach.",
+ "example": "regular",
+ "readOnly": true
+ },
+ "published_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Outreach published time",
+ "description": "The date and time the Outreach was published in ISO 8601 format.",
+ "example": "2017-06-06T13:56:12+00:00",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_store_orders",
+ "methodNameCamel": "getStoreOrders"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add order",
+ "description": "Add a new order to a store.",
+ "operationId": "postEcommerceStoresIdOrders",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ },
+ "name": {
+ "type": "string",
+ "title": "Outreach name",
+ "description": "The name for the outreach.",
+ "example": "Freddie's Jokes",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach type",
+ "description": "The type of the outreach.",
+ "example": "regular",
+ "readOnly": true
+ },
+ "published_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Outreach published time",
+ "description": "The date and time the Outreach was published in ISO 8601 format.",
+ "example": "2017-06-06T13:56:12+00:00",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_store_order",
+ "methodNameCamel": "addStoreOrder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "required": [
+ "id",
+ "customer",
+ "currency_code",
+ "order_total",
+ "lines"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters.",
+ "maxLength": 50
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign for an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the shipping address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with the billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "required": [
+ "code",
+ "type",
+ "amount_discounted"
+ ],
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "required": [
+ "id",
+ "product_id",
+ "product_variant_id",
+ "quantity",
+ "price"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "required": [
+ "id",
+ "title",
+ "variants"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "required": [
+ "id",
+ "title"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "required": [
+ "id",
+ "url"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published.",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ }
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/orders/{order_id}": {
+ "get": {
+ "summary": "Get order info",
+ "description": "Get information about a specific order.",
+ "operationId": "getEcommerceStoresIdOrdersId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ },
+ "name": {
+ "type": "string",
+ "title": "Outreach name",
+ "description": "The name for the outreach.",
+ "example": "Freddie's Jokes",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach type",
+ "description": "The type of the outreach.",
+ "example": "regular",
+ "readOnly": true
+ },
+ "published_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Outreach published time",
+ "description": "The date and time the Outreach was published in ISO 8601 format.",
+ "example": "2017-06-06T13:56:12+00:00",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_order",
+ "methodNameCamel": "getOrder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "put": {
+ "summary": "Add or update order",
+ "description": "Add or update an order.",
+ "operationId": "putEcommerceStoresIdOrdersId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ },
+ "name": {
+ "type": "string",
+ "title": "Outreach name",
+ "description": "The name for the outreach.",
+ "example": "Freddie's Jokes",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach type",
+ "description": "The type of the outreach.",
+ "example": "regular",
+ "readOnly": true
+ },
+ "published_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Outreach published time",
+ "description": "The date and time the Outreach was published in ISO 8601 format.",
+ "example": "2017-06-06T13:56:12+00:00",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "set_order",
+ "methodNameCamel": "setOrder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer. Limited to 50 characters.",
+ "maxLength": 50
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "405 N Angier Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign for an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2024-09-10T17:27:43+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.",
+ "example": "2024-09-10T17:27:43+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2024-09-10T17:27:43+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "405 N Angier Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the shipping address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The country in the shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -84.362887
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 33.768526
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address.",
+ "example": "+16155550128"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with the billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "405 N Angier Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -84.362887
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 33.768526
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address",
+ "example": "+16155550128"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "required": [
+ "code",
+ "type",
+ "amount_discounted"
+ ],
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "required": [
+ "id",
+ "title"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "required": [
+ "id",
+ "url"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published.",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ }
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "patch": {
+ "summary": "Update order",
+ "description": "Update a specific order.",
+ "operationId": "patchEcommerceStoresIdOrdersId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Foreign ID",
+ "description": "A unique identifier for the order.",
+ "readOnly": true
+ },
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Customer Foreign ID",
+ "description": "A unique identifier for the customer.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "The customer's email address.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "orders_count": {
+ "type": "integer",
+ "title": "Orders Count",
+ "description": "The customer's total order count.",
+ "readOnly": true,
+ "example": 4
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total amount the customer has spent.",
+ "readOnly": true,
+ "example": 100
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the customer was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the customer was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "store_id": {
+ "type": "string",
+ "title": "Store Foreign ID",
+ "description": "The unique identifier for the store.",
+ "readOnly": true
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order",
+ "items": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ },
+ "name": {
+ "type": "string",
+ "title": "Outreach name",
+ "description": "The name for the outreach.",
+ "example": "Freddie's Jokes",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach type",
+ "description": "The type of the outreach.",
+ "example": "regular",
+ "readOnly": true
+ },
+ "published_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Outreach published time",
+ "description": "The date and time the Outreach was published in ISO 8601 format.",
+ "example": "2017-06-06T13:56:12+00:00",
+ "readOnly": true
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_order",
+ "methodNameCamel": "updateOrder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order",
+ "description": "Information about a specific order.",
+ "properties": {
+ "customer": {
+ "type": "object",
+ "title": "E-commerce Customer",
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.",
+ "properties": {
+ "opt_in_status": {
+ "type": "boolean",
+ "title": "Opt-in Status",
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "type": "string",
+ "title": "First Name",
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "type": "string",
+ "title": "Last Name",
+ "description": "The customer's last name."
+ },
+ "address": {
+ "type": "object",
+ "title": "Address",
+ "description": "The customer's address.",
+ "properties": {
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The mailing address of the customer.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the customer's mailing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city the customer is located in.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The customer's state name or normalized province.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the customer's province or state.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The customer's postal or zip code.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The customer's country.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the customer's country.",
+ "example": "US"
+ }
+ }
+ }
+ }
+ },
+ "campaign_id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies the campaign associated with an order.",
+ "example": "839488a60b"
+ },
+ "cart_id": {
+ "type": "string",
+ "title": "Cart ID",
+ "description": "A cart id that the order was placed for.",
+ "example": "cart-123"
+ },
+ "landing_site": {
+ "type": "string",
+ "title": "Landing Site",
+ "description": "The URL for the page where the buyer landed when entering the shop.",
+ "example": "http://www.example.com?source=abc"
+ },
+ "financial_status": {
+ "type": "string",
+ "title": "Financial Status",
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "type": "string",
+ "title": "Fulfillment Status",
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "type": "number",
+ "title": "Order Total",
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "type": "string",
+ "title": "Order URL",
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "type": "number",
+ "title": "Discount Total",
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "type": "number",
+ "title": "Tax Total",
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "type": "number",
+ "title": "Shipping Total",
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "type": "string",
+ "enum": [
+ "prec"
+ ],
+ "title": "Tracking Code",
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "type": "string",
+ "title": "Foreign Processed Time",
+ "format": "date-time",
+ "description": "The date and time the order was processed in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "cancelled_at_foreign": {
+ "type": "string",
+ "title": "Foreign Cancel Time",
+ "format": "date-time",
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at_foreign": {
+ "type": "string",
+ "title": "Foreign Update Time",
+ "format": "date-time",
+ "description": "The date and time the order was updated in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "shipping_address": {
+ "type": "object",
+ "title": "Shipping Address",
+ "description": "The shipping address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's shipping address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The shipping address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the shipping address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the order's shipping address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the order's shipping address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state the order's shipping address is located in.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the order's shipping address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the order's shipping address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the shipping address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the shipping address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the shipping address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the order's shipping address",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with an order's shipping address."
+ }
+ }
+ },
+ "billing_address": {
+ "type": "object",
+ "title": "Billing Address",
+ "description": "The billing address for the order.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name associated with an order's billing address.",
+ "example": "Freddie Chimpenheimer"
+ },
+ "address1": {
+ "type": "string",
+ "title": "Address Field 1",
+ "description": "The billing address for the order.",
+ "example": "675 Ponce de Leon Ave NE"
+ },
+ "address2": {
+ "type": "string",
+ "title": "Address Field 2",
+ "description": "An additional field for the billing address.",
+ "example": "Suite 5000"
+ },
+ "city": {
+ "type": "string",
+ "title": "City ",
+ "description": "The city in the billing address.",
+ "example": "Atlanta"
+ },
+ "province": {
+ "type": "string",
+ "title": "Province",
+ "description": "The state or normalized province in the billing address.",
+ "example": "Georgia"
+ },
+ "province_code": {
+ "type": "string",
+ "title": "Province Code",
+ "description": "The two-letter code for the province or state in the billing address.",
+ "example": "GA"
+ },
+ "postal_code": {
+ "type": "string",
+ "title": "Postal Code",
+ "description": "The postal or zip code in the billing address.",
+ "example": "30308"
+ },
+ "country": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The country in the billing address.",
+ "example": "United States"
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The two-letter code for the country in the billing address.",
+ "example": "US"
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The longitude for the billing address location.",
+ "example": -75.68903
+ },
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The latitude for the billing address location.",
+ "example": 45.427408
+ },
+ "phone": {
+ "type": "string",
+ "title": "Phone Number",
+ "description": "The phone number for the billing address.",
+ "example": "8675309"
+ },
+ "company": {
+ "type": "string",
+ "title": "Company",
+ "description": "The company associated with the billing address."
+ }
+ }
+ },
+ "promos": {
+ "type": "array",
+ "title": "Promos",
+ "description": "The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided.",
+ "items": {
+ "type": "object",
+ "required": [
+ "code",
+ "type",
+ "amount_discounted"
+ ],
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Code",
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "type": "number",
+ "title": "Amount Discounted",
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "Type of discount. For free shipping set type to fixed",
+ "enum": [
+ "fixed",
+ "percentage"
+ ]
+ }
+ }
+ }
+ },
+ "lines": {
+ "type": "array",
+ "title": "Order Line Items",
+ "description": "An array of the order's line items.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ }
+ }
+ },
+ "outreach": {
+ "type": "object",
+ "title": "Outreach",
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Outreach ID",
+ "description": "A unique identifier for the outreach. Can be an email campaign ID.",
+ "example": "839488a60b"
+ }
+ }
+ },
+ "tracking_number": {
+ "type": "string",
+ "title": "Tracking number",
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "type": "string",
+ "title": "Tracking carrier",
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "type": "string",
+ "title": "Tracking URL",
+ "description": "The tracking URL associated with the order."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete order",
+ "description": "Delete an order.",
+ "operationId": "deleteEcommerceStoresIdOrdersId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_order",
+ "methodNameCamel": "deleteOrder"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/orders/{order_id}/lines": {
+ "get": {
+ "summary": "List order line items",
+ "description": "Get information about an order's line items.",
+ "operationId": "getEcommerceStoresIdOrdersIdLines",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Order Lines",
+ "description": "A collection of an order's line items.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "order_id": {
+ "type": "string",
+ "title": "Order ID",
+ "description": "The order id."
+ },
+ "lines": {
+ "type": "array",
+ "title": "Ecommerce Order Lines",
+ "description": "An array of objects, each representing an order's line item.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all_order_line_items",
+ "methodNameCamel": "getAllOrderLineItems"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add order line item",
+ "description": "Add a new line item to an existing order.",
+ "operationId": "postEcommerceStoresIdOrdersIdLines",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_order_line_item",
+ "methodNameCamel": "addOrderLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "required": [
+ "id",
+ "product_id",
+ "product_variant_id",
+ "quantity",
+ "price"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "required": [
+ "id",
+ "title",
+ "variants"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "required": [
+ "id",
+ "title"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "required": [
+ "id",
+ "url"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published.",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ }
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}": {
+ "get": {
+ "summary": "Get order line item",
+ "description": "Get information about a specific order line item.",
+ "operationId": "getEcommerceStoresIdOrdersIdLinesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "line_id",
+ "x-title": "Order Line ID",
+ "description": "The id for the line item of an order.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_order_line_item",
+ "methodNameCamel": "getOrderLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update order line item",
+ "description": "Update a specific order line item.",
+ "operationId": "patchEcommerceStoresIdOrdersIdLinesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "line_id",
+ "x-title": "Order Line ID",
+ "description": "The id for the line item of an order.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Order Line Item Foreign ID",
+ "description": "A unique identifier for an order line item.",
+ "readOnly": true
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with an order line item."
+ },
+ "product_title": {
+ "type": "string",
+ "title": "Order Line Item Product Title",
+ "description": "The name of the product for an order line item.",
+ "readOnly": true
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with an order line item."
+ },
+ "product_variant_title": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Title",
+ "description": "The name of the product variant for an order line item.",
+ "readOnly": true
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product.",
+ "readOnly": true
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The order line item quantity."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The order line item price."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to a line item."
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_order_line_item",
+ "methodNameCamel": "updateOrderLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Order Line Item",
+ "description": "Information about a specific order line.",
+ "properties": {
+ "product_id": {
+ "type": "string",
+ "title": "Order Line Item Product Foreign ID",
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "type": "string",
+ "title": "Order Line Item Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "quantity": {
+ "type": "integer",
+ "title": "Quantity",
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "type": "number",
+ "title": "Discount",
+ "description": "The total discount amount applied to this line item."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete order line item",
+ "description": "Delete a specific order line item.",
+ "operationId": "deleteEcommerceStoresIdOrdersIdLinesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "order_id",
+ "x-title": "Order ID",
+ "description": "The id for the order in a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "line_id",
+ "x-title": "Order Line ID",
+ "description": "The id for the line item of an order.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_order_line_item",
+ "methodNameCamel": "deleteOrderLineItem"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/products": {
+ "get": {
+ "summary": "List product",
+ "description": "Get information about a store's products.",
+ "operationId": "getEcommerceStoresIdProducts",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Products",
+ "description": "A collection of a store's products.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "products": {
+ "type": "array",
+ "title": "Products",
+ "description": "An array of objects, each representing a store product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The currency code",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "Returns up to 50 of the product's variants. To retrieve all variants use [Product Variants](https://mailchimp.com/developer/marketing/api/ecommerce-product-variants/).",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_all_store_products",
+ "methodNameCamel": "getAllStoreProducts"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add product",
+ "description": "Add a new product to a store.",
+ "operationId": "postEcommerceStoresIdProducts",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The currency code",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "Returns up to 50 of the product's variants. To retrieve all variants use [Product Variants](https://mailchimp.com/developer/marketing/api/ecommerce-product-variants/).",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_store_product",
+ "methodNameCamel": "addStoreProduct"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "required": [
+ "id",
+ "title",
+ "variants"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "required": [
+ "id",
+ "title"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "required": [
+ "id",
+ "url"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published.",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/products/{product_id}": {
+ "get": {
+ "summary": "Get product info",
+ "description": "Get information about a specific product.",
+ "operationId": "getEcommerceStoresIdProductsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The currency code",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "Returns up to 50 of the product's variants. To retrieve all variants use [Product Variants](https://mailchimp.com/developer/marketing/api/ecommerce-product-variants/).",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_store_product",
+ "methodNameCamel": "getStoreProduct"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update product",
+ "description": "Update a specific product.",
+ "operationId": "patchEcommerceStoresIdProductsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The currency code",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "Returns up to 50 of the product's variants. To retrieve all variants use [Product Variants](https://mailchimp.com/developer/marketing/api/ecommerce-product-variants/).",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_store_product",
+ "methodNameCamel": "updateStoreProduct"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "put": {
+ "summary": "Create or update product",
+ "description": "Update a specific product.",
+ "operationId": "putEcommerceStoresIdProductsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency Code",
+ "description": "The currency code",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "Returns up to 50 of the product's variants. To retrieve all variants use [Product Variants](https://mailchimp.com/developer/marketing/api/ecommerce-product-variants/).",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published in ISO 8601 format.",
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_or_update_store_product",
+ "methodNameCamel": "createOrUpdateStoreProduct"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product",
+ "description": "Information about a specific product.",
+ "required": [
+ "id"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Foreign ID",
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product.",
+ "example": "Cat Hat"
+ },
+ "handle": {
+ "type": "string",
+ "title": "Handle",
+ "description": "The handle of a product.",
+ "example": "cat-hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "Product URL",
+ "description": "The URL for a product."
+ },
+ "description": {
+ "type": "string",
+ "title": "Description",
+ "description": "The description of a product.",
+ "example": "This is a cat hat."
+ },
+ "type": {
+ "type": "string",
+ "title": "Type",
+ "description": "The type of product.",
+ "example": "Accessories"
+ },
+ "vendor": {
+ "type": "string",
+ "title": "Vendor",
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Product Image URL",
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "required": [
+ "id",
+ "title"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ },
+ "images": {
+ "type": "array",
+ "title": "Product Images",
+ "description": "An array of the product's images.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "required": [
+ "id",
+ "url"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "published_at_foreign": {
+ "type": "string",
+ "title": "Foreign Publish Time",
+ "format": "date-time",
+ "description": "The date and time the product was published.",
+ "example": "2015-07-15T19:28:00+00:00"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete product",
+ "description": "Delete a product.",
+ "operationId": "deleteEcommerceStoresIdProductsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_store_product",
+ "methodNameCamel": "deleteStoreProduct"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/products/{product_id}/variants": {
+ "get": {
+ "summary": "List product variants",
+ "description": "Get information about a product's variants.",
+ "operationId": "getEcommerceStoresIdProductsIdVariants",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Ecommerce Product Variants",
+ "description": "A collection of a product's variants.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Product ID",
+ "description": "The product id."
+ },
+ "variants": {
+ "type": "array",
+ "title": "Ecommerce Product Variants",
+ "description": "An array of objects, each representing a product's variants.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_product_variants",
+ "methodNameCamel": "getProductVariants"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add product variant",
+ "description": "Add a new variant to the product.",
+ "operationId": "postEcommerceStoresIdProductsIdVariants",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_product_variants",
+ "methodNameCamel": "addProductVariants"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "required": [
+ "id",
+ "title"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}": {
+ "get": {
+ "summary": "Get product variant info",
+ "description": "Get information about a specific product variant.",
+ "operationId": "getEcommerceStoresIdProductsIdVariantsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "variant_id",
+ "x-title": "Product Variant ID",
+ "description": "The id for the product variant.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_product_variant",
+ "methodNameCamel": "getProductVariant"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "put": {
+ "summary": "Add or update product variant",
+ "description": "Add or update a product variant.",
+ "operationId": "putEcommerceStoresIdProductsIdVariantsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "variant_id",
+ "x-title": "Product Variant ID",
+ "description": "The id for the product variant.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_product_variant",
+ "methodNameCamel": "addProductVariant"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "required": [
+ "id",
+ "title"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "patch": {
+ "summary": "Update product variant",
+ "description": "Update a product variant.",
+ "operationId": "patchEcommerceStoresIdProductsIdVariantsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "variant_id",
+ "x-title": "Product Variant ID",
+ "description": "The id for the product variant.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Product Variant Foreign ID",
+ "description": "A unique identifier for the product variant.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Creation Time",
+ "format": "date-time",
+ "description": "The date and time the product was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Update Time",
+ "format": "date-time",
+ "description": "The date and time the product was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2015-07-15T19:28:00+00:00"
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_product_variant",
+ "methodNameCamel": "updateProductVariant"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Variant",
+ "description": "Information about a specific product variant.",
+ "properties": {
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of a product variant.",
+ "example": "Cat Hat"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "type": "string",
+ "title": "SKU",
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "type": "number",
+ "title": "Price",
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "type": "integer",
+ "title": "Inventory Quantity",
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "type": "string",
+ "title": "Backorders",
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "type": "string",
+ "title": "Visibility",
+ "description": "The visibility of a product variant."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete product variant",
+ "description": "Delete a product variant.",
+ "operationId": "deleteEcommerceStoresIdProductsIdVariantsId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "variant_id",
+ "x-title": "Product Variant ID",
+ "description": "The id for the product variant.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_product_variant",
+ "methodNameCamel": "deleteProductVariant"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ecommerce/stores/{store_id}/products/{product_id}/images": {
+ "get": {
+ "summary": "List product images",
+ "description": "Get information about a product's images.",
+ "operationId": "getEcommerceStoresIdProductsIdImages",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Ecommerce Product Images",
+ "description": "A collection of a product's images.",
+ "properties": {
+ "store_id": {
+ "type": "string",
+ "title": "Store ID",
+ "description": "The store id."
+ },
+ "product_id": {
+ "type": "string",
+ "title": "Product ID",
+ "description": "The product id."
+ },
+ "images": {
+ "type": "array",
+ "title": "Ecommerce Product Images",
+ "description": "An array of objects, each representing a product image resource.",
+ "items": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_product_images",
+ "methodNameCamel": "getProductImages"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add product image",
+ "description": "Add a new image to the product.",
+ "operationId": "postEcommerceStoresIdProductsIdImages",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "add_product_image",
+ "methodNameCamel": "addProductImage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "required": [
+ "id",
+ "url"
+ ],
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}": {
+ "get": {
+ "summary": "Get product image info",
+ "description": "Get information about a specific product image.",
+ "operationId": "getEcommerceStoresIdProductsIdImagesId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "image_id",
+ "x-title": "Product Image ID",
+ "description": "The id for the product image.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_product_image",
+ "methodNameCamel": "getProductImage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "patch": {
+ "summary": "Update product image",
+ "description": "Update a product image.",
+ "operationId": "patchEcommerceStoresIdProductsIdImagesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "image_id",
+ "x-title": "Product Image ID",
+ "description": "The id for the product image.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "update_product_image",
+ "methodNameCamel": "updateProductImage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "E-commerce Product Image",
+ "description": "Information about a specific product image.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Image Foreign ID",
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "type": "array",
+ "title": "Product Variants",
+ "description": "The list of product variants using the image.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete product image",
+ "description": "Delete a product image.",
+ "operationId": "deleteEcommerceStoresIdProductsIdImagesId",
+ "parameters": [
+ {
+ "name": "store_id",
+ "x-title": "Store ID",
+ "description": "The store id.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "product_id",
+ "x-title": "Product ID",
+ "description": "The id for the product of a store.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "image_id",
+ "x-title": "Product Image ID",
+ "description": "The id for the product image.",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ecommerce"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_product_image",
+ "methodNameCamel": "deleteProductImage"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/search-campaigns": {
+ "get": {
+ "summary": "Search campaigns",
+ "description": "Search all campaigns for the specified query terms.",
+ "operationId": "getSearchCampaigns",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "query",
+ "x-title": "Query",
+ "in": "query",
+ "description": "The search query used to filter results.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Campaigns",
+ "description": "Campaigns and Snippets found for given search term.",
+ "properties": {
+ "results": {
+ "type": "array",
+ "title": "Results",
+ "description": "An array of matching campaigns and snippets.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "campaign": {
+ "type": "object",
+ "title": "Campaign",
+ "description": "A summary of an individual campaign's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Campaign ID",
+ "description": "A string that uniquely identifies this campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "parent_campaign_id": {
+ "type": "string",
+ "title": "Parent Campaign ID",
+ "description": "If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Campaign Type",
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.",
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ]
+ },
+ "create_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Create Time",
+ "description": "The date and time the campaign was created in ISO 8601 format.",
+ "readOnly": true
+ },
+ "archive_url": {
+ "type": "string",
+ "title": "Archive URL",
+ "description": "The link to the campaign's archive version in ISO 8601 format.",
+ "readOnly": true
+ },
+ "long_archive_url": {
+ "type": "string",
+ "title": "Long Archive URL",
+ "description": "The original link to the campaign's archive version.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails sent for this campaign.",
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a campaign was sent.",
+ "readOnly": true
+ },
+ "content_type": {
+ "type": "string",
+ "title": "Content Type",
+ "description": "How the campaign's content is put together.",
+ "enum": [
+ "template",
+ "html",
+ "url",
+ "multichannel"
+ ]
+ },
+ "needs_block_refresh": {
+ "type": "boolean",
+ "title": "Needs Block Refresh",
+ "description": "Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.",
+ "readOnly": true
+ },
+ "resendable": {
+ "type": "boolean",
+ "title": "Resendable",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "readOnly": true
+ },
+ "recipients": {
+ "type": "object",
+ "title": "List",
+ "description": "List settings for the campaign.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/create-and-send-to-a-segment/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "settings": {
+ "type": "object",
+ "title": "Campaign Settings",
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more.",
+ "properties": {
+ "subject_line": {
+ "type": "string",
+ "title": "Campaign Subject Line",
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "type": "string",
+ "title": "Campaign Preview Text",
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "type": "string",
+ "title": "Campaign Title",
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "type": "string",
+ "title": "From Name",
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "type": "string",
+ "title": "Reply To Address",
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "type": "boolean",
+ "title": "Conversation",
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "type": "string",
+ "title": "To Name",
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "type": "string",
+ "title": "Folder ID",
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "type": "boolean",
+ "title": "Authentication",
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "type": "boolean",
+ "title": "Auto-Footer",
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "type": "boolean",
+ "title": "Inline CSS",
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "type": "boolean",
+ "title": "Auto-Tweet",
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "type": "array",
+ "title": "Auto Post to Facebook",
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fb_comments": {
+ "type": "boolean",
+ "title": "Facebook Comments",
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "timewarp": {
+ "type": "boolean",
+ "title": "Timewarp Send",
+ "description": "Send this campaign using [Timewarp](https://mailchimp.com/help/use-timewarp/).",
+ "readOnly": true
+ },
+ "template_id": {
+ "type": "integer",
+ "title": "Template ID",
+ "description": "The id for the template used in this campaign.",
+ "readOnly": false
+ },
+ "drag_and_drop": {
+ "type": "boolean",
+ "title": "Drag And Drop Campaign",
+ "description": "Whether the campaign uses the drag-and-drop editor.",
+ "readOnly": true
+ }
+ }
+ },
+ "variate_settings": {
+ "type": "object",
+ "title": "A/B Test Options",
+ "description": "The settings specific to A/B test campaigns.",
+ "properties": {
+ "winning_combination_id": {
+ "type": "string",
+ "title": "Winning Combination ID",
+ "description": "ID for the winning combination.",
+ "readOnly": true
+ },
+ "winning_campaign_id": {
+ "type": "string",
+ "title": "Winning Campaign ID",
+ "description": "ID of the campaign that was sent to the remaining recipients based on the winning combination.",
+ "readOnly": true
+ },
+ "winner_criteria": {
+ "type": "string",
+ "title": "Winning Criteria",
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "type": "integer",
+ "title": "Test Size",
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "type": "array",
+ "title": "Subject Lines",
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "send_times": {
+ "type": "array",
+ "title": "Send Times",
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.",
+ "items": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "from_names": {
+ "type": "array",
+ "title": "From Names",
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "reply_to_addresses": {
+ "type": "array",
+ "title": "Reply To Addresses",
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contents": {
+ "type": "array",
+ "title": "Content Descriptions",
+ "description": "Descriptions of possible email contents. To set campaign contents, make a PUT request to /campaigns/{campaign_id}/content with the field 'variate_contents'.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "combinations": {
+ "type": "array",
+ "title": "Combinations",
+ "description": "Combinations of possible variables used to build emails.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the combination."
+ },
+ "subject_line": {
+ "type": "integer",
+ "title": "Subject Line",
+ "description": "The index of `variate_settings.subject_lines` used."
+ },
+ "send_time": {
+ "type": "integer",
+ "title": "Send Time",
+ "description": "The index of `variate_settings.send_times` used."
+ },
+ "from_name": {
+ "type": "integer",
+ "title": "From Name",
+ "description": "The index of `variate_settings.from_names` used."
+ },
+ "reply_to": {
+ "type": "integer",
+ "title": "Reply To",
+ "description": "The index of `variate_settings.reply_to_addresses` used."
+ },
+ "content_description": {
+ "type": "integer",
+ "title": "Content Description",
+ "description": "The index of `variate_settings.contents` used."
+ },
+ "recipients": {
+ "type": "integer",
+ "title": "Recipients",
+ "description": "The number of recipients for this combination."
+ }
+ }
+ }
+ }
+ }
+ },
+ "tracking": {
+ "type": "object",
+ "title": "Campaign Tracking Options",
+ "description": "The tracking options for a campaign.",
+ "properties": {
+ "opens": {
+ "type": "boolean",
+ "title": "Opens",
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "type": "boolean",
+ "title": "HTML Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "type": "boolean",
+ "title": "Plain-Text Click Tracking",
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "type": "boolean",
+ "title": "Mailchimp Goal Tracking",
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "type": "boolean",
+ "title": "E-commerce Tracking",
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "type": "string",
+ "title": "Google Analytics Tracking",
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "type": "string",
+ "title": "ClickTale Analytics Tracking",
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "type": "object",
+ "title": "Salesforce CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "campaign": {
+ "type": "boolean",
+ "title": "Salesforce Campaign",
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "type": "boolean",
+ "title": "Salesforce Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ },
+ "capsule": {
+ "type": "object",
+ "title": "Capsule CRM Tracking",
+ "description": "Deprecated",
+ "properties": {
+ "notes": {
+ "type": "boolean",
+ "title": "Capsule Note",
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ }
+ }
+ }
+ },
+ "rss_opts": {
+ "type": "object",
+ "title": "RSS Options",
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.",
+ "properties": {
+ "feed_url": {
+ "type": "string",
+ "title": "Feed URL",
+ "format": "uri",
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "type": "string",
+ "title": "Frequency",
+ "description": "The frequency of the RSS Campaign.",
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ]
+ },
+ "schedule": {
+ "type": "object",
+ "title": "Sending Schedule",
+ "description": "The schedule for sending the RSS Campaign.",
+ "properties": {
+ "hour": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 23,
+ "title": "Sending Hour",
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "type": "object",
+ "title": "Daily Sending Days",
+ "description": "The days of the week to send a daily RSS Campaign.",
+ "properties": {
+ "sunday": {
+ "type": "boolean",
+ "title": "Sunday",
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "type": "boolean",
+ "title": "tuesday",
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "type": "boolean",
+ "title": "Monday",
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "type": "boolean",
+ "title": "Thursday",
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "type": "boolean",
+ "title": "Friday",
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "type": "boolean",
+ "title": "Saturday",
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ }
+ },
+ "weekly_send_day": {
+ "type": "string",
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "title": "Weekly Sending Day",
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 31,
+ "title": "Monthly Sending Day",
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ }
+ },
+ "last_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Last Sent",
+ "description": "The date the campaign was last sent.",
+ "readOnly": true
+ },
+ "constrain_rss_img": {
+ "type": "boolean",
+ "title": "Constrain RSS Images",
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ }
+ },
+ "ab_split_opts": {
+ "type": "object",
+ "title": "A/B Testing Options",
+ "description": "[A/B Testing](https://mailchimp.com/help/about-ab-testing-campaigns/) options for a campaign.",
+ "readOnly": true,
+ "properties": {
+ "split_test": {
+ "type": "string",
+ "title": "Split Test",
+ "description": "The type of AB split to run.",
+ "enum": [
+ "subject",
+ "from_name",
+ "schedule"
+ ]
+ },
+ "pick_winner": {
+ "type": "string",
+ "title": "Pick Winner",
+ "description": "How we should evaluate a winner. Based on 'opens', 'clicks', or 'manual'.",
+ "enum": [
+ "opens",
+ "clicks",
+ "manual"
+ ]
+ },
+ "wait_units": {
+ "type": "string",
+ "title": "Wait Time",
+ "description": "How unit of time for measuring the winner ('hours' or 'days'). This cannot be changed after a campaign is sent.",
+ "enum": [
+ "hours",
+ "days"
+ ]
+ },
+ "wait_time": {
+ "type": "integer",
+ "title": "Wait Time",
+ "description": "The amount of time to wait before picking a winner. This cannot be changed after a campaign is sent."
+ },
+ "split_size": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "title": "Split Size",
+ "description": "The size of the split groups. Campaigns split based on 'schedule' are forced to have a 50/50 split. Valid split integers are between 1-50."
+ },
+ "from_name_a": {
+ "type": "string",
+ "title": "From Name Group A",
+ "description": "For campaigns split on 'From Name', the name for Group A."
+ },
+ "from_name_b": {
+ "type": "string",
+ "title": "From Name Group B",
+ "description": "For campaigns split on 'From Name', the name for Group B."
+ },
+ "reply_email_a": {
+ "type": "string",
+ "title": "Reply Email Group A",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group A."
+ },
+ "reply_email_b": {
+ "type": "string",
+ "title": "Reply Email Group B",
+ "description": "For campaigns split on 'From Name', the reply-to address for Group B."
+ },
+ "subject_a": {
+ "type": "string",
+ "title": "Subject Line Group A",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group A."
+ },
+ "subject_b": {
+ "type": "string",
+ "title": "Subject Line Group B",
+ "description": "For campaigns split on 'Subject Line', the subject line for Group B."
+ },
+ "send_time_a": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group A",
+ "description": "The send time for Group A."
+ },
+ "send_time_b": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time Group B",
+ "description": "The send time for Group B."
+ },
+ "send_time_winner": {
+ "type": "string",
+ "title": "Send Time Winner",
+ "description": "The send time for the winning version."
+ }
+ }
+ },
+ "social_card": {
+ "type": "object",
+ "title": "Campaign Social Card",
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).",
+ "properties": {
+ "image_url": {
+ "type": "string",
+ "title": "Image URL",
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "type": "string",
+ "title": "Campaign Description",
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Campaign Report Summary",
+ "description": "For sent campaigns, a summary of opens, clicks, and e-commerce data.",
+ "properties": {
+ "opens": {
+ "type": "integer",
+ "title": "Automation Opens",
+ "description": "The total number of opens for a campaign.",
+ "readOnly": true
+ },
+ "unique_opens": {
+ "type": "integer",
+ "title": "Unique Opens",
+ "description": "The number of unique opens.",
+ "readOnly": true
+ },
+ "open_rate": {
+ "type": "number",
+ "title": "Open Rate",
+ "description": "The number of unique opens divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Total Clicks",
+ "description": "The total number of clicks for an campaign.",
+ "readOnly": true
+ },
+ "subscriber_clicks": {
+ "type": "integer",
+ "title": "Unique Subscriber Clicks",
+ "description": "The number of unique clicks.",
+ "readOnly": true
+ },
+ "click_rate": {
+ "type": "number",
+ "title": "Click Rate",
+ "description": "The number of unique clicks divided by the total number of successful deliveries.",
+ "readOnly": true
+ },
+ "ecommerce": {
+ "type": "object",
+ "title": "E-Commerce Report",
+ "description": "E-Commerce stats for a campaign.",
+ "properties": {
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total orders for a campaign.",
+ "readOnly": true
+ },
+ "total_spent": {
+ "type": "number",
+ "title": "Total Spent",
+ "description": "The total spent for a campaign. Calculated as the sum of all order totals with no deductions.",
+ "readOnly": true
+ },
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue for a campaign. Calculated as the sum of all order totals minus shipping and tax totals.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "delivery_status": {
+ "type": "object",
+ "title": "Campaign Delivery Status",
+ "description": "Updates on campaigns in the process of sending.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Delivery Status Enabled",
+ "description": "Whether Campaign Delivery Status is enabled for this account and campaign.",
+ "readOnly": true
+ },
+ "can_cancel": {
+ "type": "boolean",
+ "title": "Campaign Cancelable",
+ "description": "Whether a campaign send can be canceled.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Delivery Status",
+ "description": "The current state of a campaign delivery.",
+ "enum": [
+ "delivering",
+ "delivered",
+ "canceling",
+ "canceled"
+ ],
+ "readOnly": true
+ },
+ "emails_sent": {
+ "type": "integer",
+ "title": "Emails Sent",
+ "description": "The total number of emails confirmed sent for this campaign so far.",
+ "readOnly": true
+ },
+ "emails_canceled": {
+ "type": "integer",
+ "title": "Emails Canceled",
+ "description": "The total number of emails canceled for this campaign.",
+ "readOnly": true
+ }
+ }
+ },
+ "resend_shortcut_eligibility": {
+ "type": "object",
+ "title": "Resend Shortcut Eligibility",
+ "description": "Determines if the campaign qualifies for the Campaign Resend Shortcuts. Only included when query parameter `include_resend_shortcuts` is `true`.",
+ "properties": {
+ "to_non_openers": {
+ "type": "object",
+ "title": "To Non-Openers",
+ "description": "Determines if the campaign qualifies to be resent to non-openers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_new_subscribers": {
+ "type": "object",
+ "title": "To New Subscribers",
+ "description": "Determines if the campaign qualifies to be resent to new subscribers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_clickers": {
+ "type": "object",
+ "title": "To Non-Clickers",
+ "description": "Determines if the campaign qualifies to be resent to non-clickers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ },
+ "to_non_purchasers": {
+ "type": "object",
+ "title": "To Non-Purchasers",
+ "description": "Determines if the campaign qualifies to be resent to non-purchasers.",
+ "properties": {
+ "is_eligible": {
+ "type": "boolean",
+ "title": "Is Eligible",
+ "description": "Determines if the campaign qualifies to be resent to this segment.",
+ "readOnly": true
+ },
+ "reason": {
+ "type": "string",
+ "title": "Reason",
+ "description": "The reason the campaign is not eligible to be resent to this segment.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "resend_shortcut_usage": {
+ "type": "object",
+ "title": "Resend Shortcut Usage",
+ "description": "Information about campaigns related through shortcuts.",
+ "properties": {
+ "shortcut_campaigns": {
+ "type": "array",
+ "title": "Shortcut Campaigns",
+ "description": "Campaigns that were created from Campaign Resend Shortcuts for this campaign",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ },
+ "send_time": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Send Time",
+ "description": "The date and time a resent campaign was sent.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Campaign Status",
+ "description": "The current status of the campaign.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "archived"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "original_campaign": {
+ "type": "object",
+ "title": "Original Campaign",
+ "description": "The original campaign that was resent.",
+ "readOnly": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "ID for the resent campaign.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Campaign Web ID",
+ "description": "The ID for the resent campaign used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of the original campaign.",
+ "readOnly": true
+ },
+ "shortcut_type": {
+ "type": "string",
+ "title": "Shortcut Type",
+ "description": "Which campaign resend shortcut was used.",
+ "enum": [
+ "non_openers",
+ "new_subscribers",
+ "non_clickers",
+ "non_purchasers"
+ ],
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "snippet": {
+ "type": "string",
+ "title": "Matching snippet"
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "searchCampaigns"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "search",
+ "methodNameCamel": "search"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/search-members": {
+ "get": {
+ "summary": "Search members",
+ "description": "Search for list members. This search can be restricted to a specific list, or can be used to search across all lists in an account.",
+ "operationId": "getSearchMembers",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "query",
+ "x-title": "Query",
+ "in": "query",
+ "description": "The search query used to filter results. Query should be a valid email, or a string representing a contact's first or last name.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "list_id",
+ "x-title": "List ID",
+ "in": "query",
+ "description": "The unique id for the list.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Members",
+ "description": "Members found for given search term",
+ "properties": {
+ "exact_matches": {
+ "type": "object",
+ "description": "Exact matches of the provided search query.",
+ "title": "Exact Matches",
+ "properties": {
+ "members": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Member Web ID",
+ "description": "The ID used in the Mailchimp web application. View this member in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/view?id={web_id}`.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "A subscriber's reason for unsubscribing."
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "sms_subscription_status": {
+ "type": "string",
+ "title": "SMS Subscription Status",
+ "description": "The status of an SMS subscription.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ]
+ },
+ "sms_subscription_last_updated": {
+ "type": "string",
+ "title": "SMS Subscription Last Update",
+ "description": "The datetime when the SMS subscription was last updated"
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ },
+ "ecommerce_data": {
+ "type": "object",
+ "title": "Ecommerce Stats",
+ "description": "Ecommerce stats for the list member if the list is attached to a store.",
+ "readOnly": true,
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue the list member has brought in.",
+ "readOnly": true
+ },
+ "number_of_orders": {
+ "type": "number",
+ "title": "Total Number of Orders",
+ "description": "The total number of orders placed by the list member.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "The region for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text of the marketing permission."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "source": {
+ "type": "string",
+ "title": "Subscriber Source",
+ "description": "The source from which the subscriber was added to this list.",
+ "readOnly": true
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "Returns up to 50 tags applied to this member. To retrieve all tags see [Member Tags](https://mailchimp.com/developer/marketing/api/list-member-tags/).",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Members",
+ "description": "An array of objects, each representing a specific list member."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ }
+ }
+ },
+ "full_search": {
+ "type": "object",
+ "description": "Partial matches of the provided search query.",
+ "title": "Partial Matches",
+ "properties": {
+ "members": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "List Members",
+ "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "email_address": {
+ "type": "string",
+ "title": "Email Address",
+ "description": "Email address for a subscriber."
+ },
+ "unique_email_id": {
+ "type": "string",
+ "title": "Unique Email ID",
+ "description": "An identifier for the address across all of Mailchimp.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "As Mailchimp evolves beyond email, you may eventually have contacts without email addresses. While the `id` is the MD5 hash of their email address, this `contact_id` is agnostic of contact\u2019s inclusion of an email address.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Member Web ID",
+ "description": "The ID used in the Mailchimp web application. View this member in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/members/view?id={web_id}`.",
+ "readOnly": true
+ },
+ "email_type": {
+ "type": "string",
+ "title": "Email Type",
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "Subscriber's current status.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional",
+ "archived"
+ ]
+ },
+ "unsubscribe_reason": {
+ "type": "string",
+ "title": "Unsubscribe Reason",
+ "description": "A subscriber's reason for unsubscribing."
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "sms_phone_number": {
+ "type": "string",
+ "title": "SMS Phone Number",
+ "description": "A US phone number for SMS contact."
+ },
+ "sms_subscription_status": {
+ "type": "string",
+ "title": "SMS Subscription Status",
+ "description": "The status of an SMS subscription.",
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "nonsubscribed",
+ "pending"
+ ]
+ },
+ "sms_subscription_last_updated": {
+ "type": "string",
+ "title": "SMS Subscription Last Update",
+ "description": "The datetime when the SMS subscription was last updated"
+ },
+ "merge_fields": {
+ "type": "object",
+ "title": "Merge Fields",
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.",
+ "additionalProperties": {
+ "description": "This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field."
+ }
+ },
+ "interests": {
+ "type": "object",
+ "title": "Subscriber Interests",
+ "description": "The key of this object's properties is the ID of the interest in question.",
+ "additionalProperties": {
+ "type": "boolean",
+ "title": "Interest Value",
+ "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."
+ }
+ },
+ "stats": {
+ "type": "object",
+ "title": "Subscriber Stats",
+ "description": "Open and click rates for this subscriber.",
+ "readOnly": true,
+ "properties": {
+ "avg_open_rate": {
+ "type": "number",
+ "title": "Average Open Rate",
+ "description": "A subscriber's average open rate.",
+ "readOnly": true
+ },
+ "avg_click_rate": {
+ "type": "number",
+ "title": "Average Click Rate",
+ "description": "A subscriber's average clickthrough rate.",
+ "readOnly": true
+ },
+ "ecommerce_data": {
+ "type": "object",
+ "title": "Ecommerce Stats",
+ "description": "Ecommerce stats for the list member if the list is attached to a store.",
+ "readOnly": true,
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue the list member has brought in.",
+ "readOnly": true
+ },
+ "number_of_orders": {
+ "type": "number",
+ "title": "Total Number of Orders",
+ "description": "The total number of orders placed by the list member.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency",
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts.",
+ "readOnly": true,
+ "example": "USD"
+ }
+ }
+ }
+ }
+ },
+ "ip_signup": {
+ "type": "string",
+ "title": "Signup IP",
+ "description": "IP address the subscriber signed up from.",
+ "readOnly": true
+ },
+ "timestamp_signup": {
+ "type": "string",
+ "title": "Signup Timestamp",
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "ip_opt": {
+ "type": "string",
+ "title": "Opt-in IP",
+ "description": "The IP address the subscriber used to confirm their opt-in status.",
+ "readOnly": true
+ },
+ "timestamp_opt": {
+ "type": "string",
+ "title": "Opt-in Timestamp",
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "member_rating": {
+ "type": "integer",
+ "title": "Member Rating",
+ "description": "Star rating for this member, between 1 and 5.",
+ "readOnly": true
+ },
+ "last_changed": {
+ "type": "string",
+ "title": "Last Changed Date",
+ "description": "The date and time the member's info was last changed in ISO 8601 format.",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "language": {
+ "type": "string",
+ "title": "Language",
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "type": "boolean",
+ "title": "VIP",
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "email_client": {
+ "type": "string",
+ "title": "Email Client",
+ "description": "The list member's email client.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "object",
+ "title": "Location",
+ "description": "Subscriber location information.",
+ "properties": {
+ "latitude": {
+ "type": "number",
+ "title": "Latitude",
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "type": "number",
+ "title": "Longitude",
+ "description": "The location longitude."
+ },
+ "gmtoff": {
+ "type": "integer",
+ "title": "GMT Offset",
+ "description": "The time difference in hours from GMT.",
+ "readOnly": true
+ },
+ "dstoff": {
+ "type": "integer",
+ "title": "DST Offset",
+ "description": "The offset for timezones where daylight saving time is observed.",
+ "readOnly": true
+ },
+ "country_code": {
+ "type": "string",
+ "title": "Country Code",
+ "description": "The unique code for the location country.",
+ "readOnly": true
+ },
+ "timezone": {
+ "type": "string",
+ "title": "Timezone",
+ "description": "The timezone for the location.",
+ "readOnly": true
+ },
+ "region": {
+ "type": "string",
+ "title": "Region",
+ "description": "The region for the location.",
+ "readOnly": true
+ }
+ }
+ },
+ "marketing_permissions": {
+ "type": "array",
+ "title": "Marketing Permissions",
+ "description": "The marketing permissions for the subscriber.",
+ "items": {
+ "type": "object",
+ "title": "Marketing Permission",
+ "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.",
+ "properties": {
+ "marketing_permission_id": {
+ "type": "string",
+ "title": "Marketing Permission ID",
+ "description": "The id for the marketing permission on the list"
+ },
+ "text": {
+ "type": "string",
+ "title": "Marketing Permission Text",
+ "description": "The text of the marketing permission."
+ },
+ "enabled": {
+ "type": "boolean",
+ "title": "Enabled",
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ }
+ }
+ },
+ "last_note": {
+ "type": "object",
+ "title": "Notes",
+ "description": "The most recent Note added about this member.",
+ "readOnly": true,
+ "properties": {
+ "note_id": {
+ "type": "integer",
+ "title": "Note ID",
+ "description": "The note id.",
+ "readOnly": true
+ },
+ "created_at": {
+ "type": "string",
+ "title": "Created Time",
+ "description": "The date and time the note was created in ISO 8601 format.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "created_by": {
+ "type": "string",
+ "title": "Author",
+ "description": "The author of the note.",
+ "readOnly": true
+ },
+ "note": {
+ "type": "string",
+ "title": "Note",
+ "description": "The content of the note.",
+ "readOnly": true
+ }
+ }
+ },
+ "source": {
+ "type": "string",
+ "title": "Subscriber Source",
+ "description": "The source from which the subscriber was added to this list.",
+ "readOnly": true
+ },
+ "tags_count": {
+ "type": "integer",
+ "title": "Tags Count",
+ "description": "The number of tags applied to this member.",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "title": "Tags",
+ "description": "Returns up to 50 tags applied to this member. To retrieve all tags see [Member Tags](https://mailchimp.com/developer/marketing/api/list-member-tags/).",
+ "readOnly": false,
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The tag id.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The list id.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "title": "Members",
+ "description": "An array of objects, each representing a specific list member."
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "searchMembers"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "search",
+ "methodNameCamel": "search"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/ping": {
+ "get": {
+ "summary": "Ping",
+ "description": "A health check for the API that won't return any account-specific information.",
+ "operationId": "getPing",
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "API health status",
+ "description": "API health status.",
+ "properties": {
+ "health_status": {
+ "type": "string",
+ "title": "API health status",
+ "description": "This will return a constant string value if the request is successful. Ex. \"Everything's Chimpy!\"",
+ "readOnly": true,
+ "example": "\"Everything's Chimpy!\""
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "ping"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get",
+ "methodNameCamel": "get"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/facebook-ads": {
+ "get": {
+ "description": "Get list of Facebook ads.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "created_at",
+ "updated_at",
+ "end_time"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of Facebook Ad Instances",
+ "schema": {
+ "type": "object",
+ "description": "Contains an array of facebook ads.",
+ "properties": {
+ "facebook_ads": {
+ "type": "array",
+ "items": {
+ "allOf": [
+ {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of an Outreach."
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Web ID",
+ "description": "The ID used in the Mailchimp web application. For example, for a `regular` outreach, you can view this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`."
+ },
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "Title or name of an Outreach."
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach Type",
+ "description": "The type of outreach this object is.",
+ "enum": [
+ "regular",
+ "email-touchpoint",
+ "plaintext",
+ "rss",
+ "reconfirm",
+ "variate",
+ "absplit",
+ "automation",
+ "facebook",
+ "google",
+ "autoresponder",
+ "transactional",
+ "page",
+ "website",
+ "social_post",
+ "survey",
+ "customer_journey",
+ "sms"
+ ]
+ },
+ "status": {
+ "type": "string",
+ "title": "Outreach Status",
+ "description": "The status of this outreach.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "scheduled",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "active",
+ "disconnected",
+ "somepaused",
+ "draft",
+ "completed",
+ "partialRejected",
+ "pending",
+ "rejected",
+ "published",
+ "unpublished"
+ ]
+ },
+ "show_report": {
+ "type": "boolean",
+ "title": "Show Report",
+ "description": "Outreach report availability. Note: This property is hotly debated in what it _should_ convey. See [MCP-1371](https://jira.mailchimp.com/browse/MCP-1371) for more context."
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was created in ISO 8601 format."
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was started in ISO 8601 format."
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "format": "date-time",
+ "description": "The date and time the outreach was last updated in ISO 8601 format."
+ },
+ "canceled_at": {
+ "type": "string",
+ "title": "Canceled At",
+ "format": "date-time",
+ "description": "The date and time the outreach was canceled in ISO 8601 format."
+ },
+ "published_time": {
+ "type": "string",
+ "title": "Publish Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was (or will be) published in ISO 8601 format."
+ },
+ "has_segment": {
+ "type": "boolean",
+ "title": "Has Segment",
+ "description": "If this outreach targets a segment of your audience."
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Report Summary",
+ "description": "High level reporting stats for an outreach.",
+ "properties": {
+ "opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_opens": {
+ "type": "integer"
+ },
+ "unique_opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer"
+ },
+ "open_rate": {
+ "type": "number"
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number"
+ },
+ "clicks": {
+ "type": "integer"
+ },
+ "subscriber_clicks": {
+ "type": "integer"
+ },
+ "click_rate": {
+ "type": "number"
+ },
+ "visits": {
+ "type": "integer"
+ },
+ "unique_visits": {
+ "type": "integer"
+ },
+ "conversion_rate": {
+ "type": "number"
+ },
+ "subscribes": {
+ "type": "integer"
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ },
+ "average_order_revenue": {
+ "type": "number"
+ }
+ }
+ },
+ "impressions": {
+ "type": "number"
+ },
+ "reach": {
+ "type": "integer"
+ },
+ "engagements": {
+ "type": "integer"
+ },
+ "total_sent": {
+ "type": "integer"
+ }
+ }
+ },
+ "recipients": {
+ "type": "object",
+ "title": "Recipients",
+ "description": "High level audience information for who the outreach targets.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/save-and-manage-segments/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Thumbnail",
+ "description": "The URL of the thumbnail for this outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "email_source_name": {
+ "type": "string",
+ "title": "Ad: Email Source Name"
+ },
+ "paused_at": {
+ "type": "string",
+ "title": "Ad: Paused At",
+ "format": "date-time",
+ "description": "The date and time the ad was paused in ISO 8601 format."
+ },
+ "end_time": {
+ "type": "string",
+ "title": "Ad: End Time",
+ "format": "date-time",
+ "description": "The date and time the ad was ended in ISO 8601 format."
+ },
+ "needs_attention": {
+ "type": "boolean",
+ "title": "Ad: Needs Attention",
+ "description": "If the ad has a problem and needs attention."
+ },
+ "was_canceled_by_facebook": {
+ "type": "boolean",
+ "title": "Ad: Was Canceled By Facebook"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "description": "A facebook ad.",
+ "properties": {
+ "is_connected": {
+ "type": "boolean",
+ "description": "Check if this ad is connected to a facebook page"
+ },
+ "has_audience": {
+ "type": "boolean",
+ "description": "Check if this ad has audience setup"
+ },
+ "has_content": {
+ "type": "boolean",
+ "description": "Check if this ad has content"
+ },
+ "channel": {
+ "type": "object",
+ "description": "Channel settings",
+ "properties": {
+ "fb_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for facebook feed",
+ "example": true
+ },
+ "fb_placement_audience": {
+ "type": "boolean",
+ "description": "Is this for facebook audience",
+ "example": false
+ },
+ "ig_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for instagram feed",
+ "example": false
+ }
+ }
+ },
+ "feedback": {
+ "type": "object",
+ "description": "Check if this ad is connected to a facebook page",
+ "properties": {
+ "content": {
+ "type": "string",
+ "description": "Feedback regarding the content of this Ad."
+ },
+ "audience": {
+ "type": "string",
+ "description": "Feedback regarding the audience of this Ad."
+ },
+ "budget": {
+ "type": "string",
+ "description": "Feedback regarding the budget of this Ad."
+ },
+ "compliance": {
+ "type": "string",
+ "description": "Feedback regarding the compliance of this Ad."
+ }
+ }
+ },
+ "site": {
+ "type": "object",
+ "description": "Connected Site",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "description": "The ID of this connected site.",
+ "example": 43
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the connected site",
+ "example": "My Connected Site"
+ },
+ "url": {
+ "type": "string",
+ "description": "The URL for this connected site.",
+ "example": "www.example.com"
+ }
+ }
+ },
+ "audience": {
+ "type": "object",
+ "description": "Audience settings",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Type of the audience",
+ "enum": [
+ "Custom Audience",
+ "Lookalike Audience",
+ "Interest-based Audience"
+ ]
+ },
+ "source_type": {
+ "type": "string",
+ "description": "List or Facebook based audience",
+ "enum": [
+ "facebook",
+ "list"
+ ]
+ },
+ "email_source": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Email source name"
+ },
+ "type": {
+ "type": "string",
+ "description": "Type of the email source"
+ },
+ "is_segment": {
+ "type": "boolean",
+ "description": "Is the source reference a segment"
+ },
+ "segment_type": {
+ "type": "string",
+ "description": "Segment type if this source is tied to a segment"
+ },
+ "list_name": {
+ "type": "string",
+ "description": "Associated list name to the source"
+ }
+ }
+ },
+ "include_source_in_target": {
+ "type": "boolean",
+ "description": "To include list contacts as part of audience"
+ },
+ "lookalike_country_code": {
+ "type": "string",
+ "description": "To find similar audience in given country"
+ },
+ "targeting_specs": {
+ "type": "object",
+ "properties": {
+ "gender": {
+ "type": "integer",
+ "enum": [
+ 0,
+ 1,
+ 2
+ ]
+ },
+ "min_age": {
+ "type": "integer"
+ },
+ "max_age": {
+ "type": "integer"
+ },
+ "locations": {
+ "type": "object",
+ "properties": {
+ "countries": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cities": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "zips": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "interests": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "budget": {
+ "type": "object",
+ "properties": {
+ "duration": {
+ "type": "integer",
+ "description": "Duration of the ad in seconds",
+ "example": 86400
+ },
+ "total_amount": {
+ "type": "number",
+ "description": "Total budget of the ad",
+ "example": 500
+ },
+ "currency_code": {
+ "type": "string",
+ "description": "Currency code",
+ "example": "USD"
+ }
+ }
+ },
+ "content": {
+ "type": "object",
+ "properties": {
+ "title": {
+ "type": "string"
+ },
+ "link_url": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "image_url": {
+ "type": "string"
+ },
+ "call_to_action": {
+ "type": "string"
+ },
+ "attachments": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "link_url": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "image_url": {
+ "type": "string"
+ },
+ "call_to_action": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ ]
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "facebookAds"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "list",
+ "methodNameCamel": "list"
+ },
+ "summary": "List facebook ads",
+ "operationId": "getAllFacebookAds",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/facebook-ads/{outreach_id}": {
+ "get": {
+ "description": "Get details of a Facebook ad.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "outreach_id",
+ "x-title": "Outreach ID",
+ "type": "string",
+ "required": true,
+ "description": "The outreach id."
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Facebook Ad Instance",
+ "schema": {
+ "allOf": [
+ {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of an Outreach."
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Web ID",
+ "description": "The ID used in the Mailchimp web application. For example, for a `regular` outreach, you can view this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`."
+ },
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "Title or name of an Outreach."
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach Type",
+ "description": "The type of outreach this object is.",
+ "enum": [
+ "regular",
+ "email-touchpoint",
+ "plaintext",
+ "rss",
+ "reconfirm",
+ "variate",
+ "absplit",
+ "automation",
+ "facebook",
+ "google",
+ "autoresponder",
+ "transactional",
+ "page",
+ "website",
+ "social_post",
+ "survey",
+ "customer_journey",
+ "sms"
+ ]
+ },
+ "status": {
+ "type": "string",
+ "title": "Outreach Status",
+ "description": "The status of this outreach.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "scheduled",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "active",
+ "disconnected",
+ "somepaused",
+ "draft",
+ "completed",
+ "partialRejected",
+ "pending",
+ "rejected",
+ "published",
+ "unpublished"
+ ]
+ },
+ "show_report": {
+ "type": "boolean",
+ "title": "Show Report",
+ "description": "Outreach report availability. Note: This property is hotly debated in what it _should_ convey. See [MCP-1371](https://jira.mailchimp.com/browse/MCP-1371) for more context."
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was created in ISO 8601 format."
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was started in ISO 8601 format."
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "format": "date-time",
+ "description": "The date and time the outreach was last updated in ISO 8601 format."
+ },
+ "canceled_at": {
+ "type": "string",
+ "title": "Canceled At",
+ "format": "date-time",
+ "description": "The date and time the outreach was canceled in ISO 8601 format."
+ },
+ "published_time": {
+ "type": "string",
+ "title": "Publish Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was (or will be) published in ISO 8601 format."
+ },
+ "has_segment": {
+ "type": "boolean",
+ "title": "Has Segment",
+ "description": "If this outreach targets a segment of your audience."
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Report Summary",
+ "description": "High level reporting stats for an outreach.",
+ "properties": {
+ "opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_opens": {
+ "type": "integer"
+ },
+ "unique_opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer"
+ },
+ "open_rate": {
+ "type": "number"
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number"
+ },
+ "clicks": {
+ "type": "integer"
+ },
+ "subscriber_clicks": {
+ "type": "integer"
+ },
+ "click_rate": {
+ "type": "number"
+ },
+ "visits": {
+ "type": "integer"
+ },
+ "unique_visits": {
+ "type": "integer"
+ },
+ "conversion_rate": {
+ "type": "number"
+ },
+ "subscribes": {
+ "type": "integer"
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ },
+ "average_order_revenue": {
+ "type": "number"
+ }
+ }
+ },
+ "impressions": {
+ "type": "number"
+ },
+ "reach": {
+ "type": "integer"
+ },
+ "engagements": {
+ "type": "integer"
+ },
+ "total_sent": {
+ "type": "integer"
+ }
+ }
+ },
+ "recipients": {
+ "type": "object",
+ "title": "Recipients",
+ "description": "High level audience information for who the outreach targets.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/save-and-manage-segments/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Thumbnail",
+ "description": "The URL of the thumbnail for this outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "email_source_name": {
+ "type": "string",
+ "title": "Ad: Email Source Name"
+ },
+ "paused_at": {
+ "type": "string",
+ "title": "Ad: Paused At",
+ "format": "date-time",
+ "description": "The date and time the ad was paused in ISO 8601 format."
+ },
+ "end_time": {
+ "type": "string",
+ "title": "Ad: End Time",
+ "format": "date-time",
+ "description": "The date and time the ad was ended in ISO 8601 format."
+ },
+ "needs_attention": {
+ "type": "boolean",
+ "title": "Ad: Needs Attention",
+ "description": "If the ad has a problem and needs attention."
+ },
+ "was_canceled_by_facebook": {
+ "type": "boolean",
+ "title": "Ad: Was Canceled By Facebook"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "description": "A facebook ad.",
+ "properties": {
+ "is_connected": {
+ "type": "boolean",
+ "description": "Check if this ad is connected to a facebook page"
+ },
+ "has_audience": {
+ "type": "boolean",
+ "description": "Check if this ad has audience setup"
+ },
+ "has_content": {
+ "type": "boolean",
+ "description": "Check if this ad has content"
+ },
+ "channel": {
+ "type": "object",
+ "description": "Channel settings",
+ "properties": {
+ "fb_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for facebook feed",
+ "example": true
+ },
+ "fb_placement_audience": {
+ "type": "boolean",
+ "description": "Is this for facebook audience",
+ "example": false
+ },
+ "ig_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for instagram feed",
+ "example": false
+ }
+ }
+ },
+ "feedback": {
+ "type": "object",
+ "description": "Check if this ad is connected to a facebook page",
+ "properties": {
+ "content": {
+ "type": "string",
+ "description": "Feedback regarding the content of this Ad."
+ },
+ "audience": {
+ "type": "string",
+ "description": "Feedback regarding the audience of this Ad."
+ },
+ "budget": {
+ "type": "string",
+ "description": "Feedback regarding the budget of this Ad."
+ },
+ "compliance": {
+ "type": "string",
+ "description": "Feedback regarding the compliance of this Ad."
+ }
+ }
+ },
+ "site": {
+ "type": "object",
+ "description": "Connected Site",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "description": "The ID of this connected site.",
+ "example": 43
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the connected site",
+ "example": "My Connected Site"
+ },
+ "url": {
+ "type": "string",
+ "description": "The URL for this connected site.",
+ "example": "www.example.com"
+ }
+ }
+ },
+ "audience": {
+ "type": "object",
+ "description": "Audience settings",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Type of the audience",
+ "enum": [
+ "Custom Audience",
+ "Lookalike Audience",
+ "Interest-based Audience"
+ ]
+ },
+ "source_type": {
+ "type": "string",
+ "description": "List or Facebook based audience",
+ "enum": [
+ "facebook",
+ "list"
+ ]
+ },
+ "email_source": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Email source name"
+ },
+ "type": {
+ "type": "string",
+ "description": "Type of the email source"
+ },
+ "is_segment": {
+ "type": "boolean",
+ "description": "Is the source reference a segment"
+ },
+ "segment_type": {
+ "type": "string",
+ "description": "Segment type if this source is tied to a segment"
+ },
+ "list_name": {
+ "type": "string",
+ "description": "Associated list name to the source"
+ }
+ }
+ },
+ "include_source_in_target": {
+ "type": "boolean",
+ "description": "To include list contacts as part of audience"
+ },
+ "lookalike_country_code": {
+ "type": "string",
+ "description": "To find similar audience in given country"
+ },
+ "targeting_specs": {
+ "type": "object",
+ "properties": {
+ "gender": {
+ "type": "integer",
+ "enum": [
+ 0,
+ 1,
+ 2
+ ]
+ },
+ "min_age": {
+ "type": "integer"
+ },
+ "max_age": {
+ "type": "integer"
+ },
+ "locations": {
+ "type": "object",
+ "properties": {
+ "countries": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cities": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "zips": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "interests": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "budget": {
+ "type": "object",
+ "properties": {
+ "duration": {
+ "type": "integer",
+ "description": "Duration of the ad in seconds",
+ "example": 86400
+ },
+ "total_amount": {
+ "type": "number",
+ "description": "Total budget of the ad",
+ "example": 500
+ },
+ "currency_code": {
+ "type": "string",
+ "description": "Currency code",
+ "example": "USD"
+ }
+ }
+ },
+ "content": {
+ "type": "object",
+ "properties": {
+ "title": {
+ "type": "string"
+ },
+ "link_url": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "image_url": {
+ "type": "string"
+ },
+ "call_to_action": {
+ "type": "string"
+ },
+ "attachments": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "link_url": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "image_url": {
+ "type": "string"
+ },
+ "call_to_action": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "facebookAds"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_ad",
+ "methodNameCamel": "getAd"
+ },
+ "summary": "Get facebook ad info",
+ "operationId": "getFacebookAdsId",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/facebook-ads": {
+ "get": {
+ "description": "Get reports of Facebook ads.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "created_at",
+ "updated_at",
+ "end_time"
+ ]
+ },
+ {
+ "name": "sort_dir",
+ "x-title": "Sort Direction",
+ "description": "Determines the order direction for sorted results.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "ASC",
+ "DESC"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of Facebook Ad Report Instances",
+ "schema": {
+ "type": "object",
+ "description": "A collection of Facebook ads.",
+ "properties": {
+ "facebook_ads": {
+ "type": "array",
+ "items": {
+ "allOf": [
+ {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of an Outreach."
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Web ID",
+ "description": "The ID used in the Mailchimp web application. For example, for a `regular` outreach, you can view this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`."
+ },
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "Title or name of an Outreach."
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach Type",
+ "description": "The type of outreach this object is.",
+ "enum": [
+ "regular",
+ "email-touchpoint",
+ "plaintext",
+ "rss",
+ "reconfirm",
+ "variate",
+ "absplit",
+ "automation",
+ "facebook",
+ "google",
+ "autoresponder",
+ "transactional",
+ "page",
+ "website",
+ "social_post",
+ "survey",
+ "customer_journey",
+ "sms"
+ ]
+ },
+ "status": {
+ "type": "string",
+ "title": "Outreach Status",
+ "description": "The status of this outreach.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "scheduled",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "active",
+ "disconnected",
+ "somepaused",
+ "draft",
+ "completed",
+ "partialRejected",
+ "pending",
+ "rejected",
+ "published",
+ "unpublished"
+ ]
+ },
+ "show_report": {
+ "type": "boolean",
+ "title": "Show Report",
+ "description": "Outreach report availability. Note: This property is hotly debated in what it _should_ convey. See [MCP-1371](https://jira.mailchimp.com/browse/MCP-1371) for more context."
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was created in ISO 8601 format."
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was started in ISO 8601 format."
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "format": "date-time",
+ "description": "The date and time the outreach was last updated in ISO 8601 format."
+ },
+ "canceled_at": {
+ "type": "string",
+ "title": "Canceled At",
+ "format": "date-time",
+ "description": "The date and time the outreach was canceled in ISO 8601 format."
+ },
+ "published_time": {
+ "type": "string",
+ "title": "Publish Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was (or will be) published in ISO 8601 format."
+ },
+ "has_segment": {
+ "type": "boolean",
+ "title": "Has Segment",
+ "description": "If this outreach targets a segment of your audience."
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Report Summary",
+ "description": "High level reporting stats for an outreach.",
+ "properties": {
+ "opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_opens": {
+ "type": "integer"
+ },
+ "unique_opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer"
+ },
+ "open_rate": {
+ "type": "number"
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number"
+ },
+ "clicks": {
+ "type": "integer"
+ },
+ "subscriber_clicks": {
+ "type": "integer"
+ },
+ "click_rate": {
+ "type": "number"
+ },
+ "visits": {
+ "type": "integer"
+ },
+ "unique_visits": {
+ "type": "integer"
+ },
+ "conversion_rate": {
+ "type": "number"
+ },
+ "subscribes": {
+ "type": "integer"
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ },
+ "average_order_revenue": {
+ "type": "number"
+ }
+ }
+ },
+ "impressions": {
+ "type": "number"
+ },
+ "reach": {
+ "type": "integer"
+ },
+ "engagements": {
+ "type": "integer"
+ },
+ "total_sent": {
+ "type": "integer"
+ }
+ }
+ },
+ "recipients": {
+ "type": "object",
+ "title": "Recipients",
+ "description": "High level audience information for who the outreach targets.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/save-and-manage-segments/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Thumbnail",
+ "description": "The URL of the thumbnail for this outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "email_source_name": {
+ "type": "string",
+ "title": "Ad: Email Source Name"
+ },
+ "paused_at": {
+ "type": "string",
+ "title": "Ad: Paused At",
+ "format": "date-time",
+ "description": "The date and time the ad was paused in ISO 8601 format."
+ },
+ "end_time": {
+ "type": "string",
+ "title": "Ad: End Time",
+ "format": "date-time",
+ "description": "The date and time the ad was ended in ISO 8601 format."
+ },
+ "needs_attention": {
+ "type": "boolean",
+ "title": "Ad: Needs Attention",
+ "description": "If the ad has a problem and needs attention."
+ },
+ "was_canceled_by_facebook": {
+ "type": "boolean",
+ "title": "Ad: Was Canceled By Facebook"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "channel": {
+ "type": "object",
+ "description": "Channel settings",
+ "properties": {
+ "fb_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for facebook feed",
+ "example": true
+ },
+ "fb_placement_audience": {
+ "type": "boolean",
+ "description": "Is this for facebook audience",
+ "example": false
+ },
+ "ig_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for instagram feed",
+ "example": false
+ }
+ }
+ },
+ "audience": {
+ "type": "object",
+ "description": "Audience settings",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Type of the audience",
+ "enum": [
+ "Custom Audience",
+ "Lookalike Audience",
+ "Interest-based Audience"
+ ]
+ },
+ "source_type": {
+ "type": "string",
+ "description": "List or Facebook based audience",
+ "enum": [
+ "facebook",
+ "list"
+ ]
+ },
+ "email_source": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Email source name"
+ },
+ "type": {
+ "type": "string",
+ "description": "Type of the email source"
+ },
+ "is_segment": {
+ "type": "boolean",
+ "description": "Is the source reference a segment"
+ },
+ "segment_type": {
+ "type": "string",
+ "description": "Segment type if this source is tied to a segment"
+ },
+ "list_name": {
+ "type": "string",
+ "description": "Associated list name to the source"
+ }
+ }
+ },
+ "include_source_in_target": {
+ "type": "boolean",
+ "description": "To include list contacts as part of audience"
+ },
+ "lookalike_country_code": {
+ "type": "string",
+ "description": "To find similar audience in given country"
+ },
+ "targeting_specs": {
+ "type": "object",
+ "properties": {
+ "gender": {
+ "type": "integer",
+ "enum": [
+ 0,
+ 1,
+ 2
+ ]
+ },
+ "min_age": {
+ "type": "integer"
+ },
+ "max_age": {
+ "type": "integer"
+ },
+ "locations": {
+ "type": "object",
+ "properties": {
+ "countries": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cities": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "zips": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "interests": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "budget": {
+ "type": "object",
+ "properties": {
+ "duration": {
+ "type": "integer",
+ "description": "Duration of the ad in seconds",
+ "example": 86400
+ },
+ "total_amount": {
+ "type": "number",
+ "description": "Total budget of the ad",
+ "example": 500
+ },
+ "currency_code": {
+ "type": "string",
+ "description": "Currency code",
+ "example": "USD"
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "description": "Report summary of facebook ad",
+ "properties": {
+ "reach": {
+ "type": "integer"
+ },
+ "impressions": {
+ "type": "integer"
+ },
+ "clicks": {
+ "type": "integer"
+ },
+ "click_rate": {
+ "type": "number"
+ },
+ "unique_clicks": {
+ "type": "integer"
+ },
+ "first_time_buyers": {
+ "type": "integer"
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "total_products_sold": {
+ "type": "integer"
+ },
+ "total_orders": {
+ "type": "integer"
+ },
+ "average_order_amount": {
+ "type": "object",
+ "properties": {
+ "amount": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "cost_per_click": {
+ "type": "object",
+ "properties": {
+ "amount": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "average_daily_budget": {
+ "type": "object",
+ "properties": {
+ "amount": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "likes": {
+ "type": "integer"
+ },
+ "comments": {
+ "type": "integer"
+ },
+ "shares": {
+ "type": "integer"
+ },
+ "has_extended_ad_duration": {
+ "type": "boolean"
+ },
+ "extended_at": {
+ "type": "object",
+ "properties": {
+ "datetime": {
+ "type": "string"
+ },
+ "timezone": {
+ "type": "string"
+ }
+ }
+ },
+ "return_on_investment": {
+ "type": "number"
+ }
+ }
+ },
+ "audience_activity": {
+ "type": "object",
+ "properties": {
+ "clicks": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string"
+ },
+ "clicks": {
+ "type": "integer"
+ }
+ }
+ }
+ },
+ "impressions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string"
+ },
+ "impressions": {
+ "type": "integer"
+ }
+ }
+ }
+ },
+ "revenue": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string"
+ },
+ "revenue": {
+ "type": "number"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ ]
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_facebook_ads_report_all",
+ "methodNameCamel": "getFacebookAdsReportAll"
+ },
+ "summary": "List facebook ads reports",
+ "operationId": "getReportingFacebookAds",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/facebook-ads/{outreach_id}": {
+ "get": {
+ "description": "Get report of a Facebook ad.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "outreach_id",
+ "x-title": "Outreach ID",
+ "type": "string",
+ "required": true,
+ "description": "The outreach id."
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Facebook Ad report Instance",
+ "schema": {
+ "allOf": [
+ {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "ID",
+ "description": "Unique ID of an Outreach."
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Web ID",
+ "description": "The ID used in the Mailchimp web application. For example, for a `regular` outreach, you can view this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`."
+ },
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "Title or name of an Outreach."
+ },
+ "type": {
+ "type": "string",
+ "title": "Outreach Type",
+ "description": "The type of outreach this object is.",
+ "enum": [
+ "regular",
+ "email-touchpoint",
+ "plaintext",
+ "rss",
+ "reconfirm",
+ "variate",
+ "absplit",
+ "automation",
+ "facebook",
+ "google",
+ "autoresponder",
+ "transactional",
+ "page",
+ "website",
+ "social_post",
+ "survey",
+ "customer_journey",
+ "sms"
+ ]
+ },
+ "status": {
+ "type": "string",
+ "title": "Outreach Status",
+ "description": "The status of this outreach.",
+ "enum": [
+ "save",
+ "paused",
+ "schedule",
+ "scheduled",
+ "sending",
+ "sent",
+ "canceled",
+ "canceling",
+ "active",
+ "disconnected",
+ "somepaused",
+ "draft",
+ "completed",
+ "partialRejected",
+ "pending",
+ "rejected",
+ "published",
+ "unpublished"
+ ]
+ },
+ "show_report": {
+ "type": "boolean",
+ "title": "Show Report",
+ "description": "Outreach report availability. Note: This property is hotly debated in what it _should_ convey. See [MCP-1371](https://jira.mailchimp.com/browse/MCP-1371) for more context."
+ },
+ "create_time": {
+ "type": "string",
+ "title": "Create Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was created in ISO 8601 format."
+ },
+ "start_time": {
+ "type": "string",
+ "title": "Start Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was started in ISO 8601 format."
+ },
+ "updated_at": {
+ "type": "string",
+ "title": "Updated At",
+ "format": "date-time",
+ "description": "The date and time the outreach was last updated in ISO 8601 format."
+ },
+ "canceled_at": {
+ "type": "string",
+ "title": "Canceled At",
+ "format": "date-time",
+ "description": "The date and time the outreach was canceled in ISO 8601 format."
+ },
+ "published_time": {
+ "type": "string",
+ "title": "Publish Time",
+ "format": "date-time",
+ "description": "The date and time the outreach was (or will be) published in ISO 8601 format."
+ },
+ "has_segment": {
+ "type": "boolean",
+ "title": "Has Segment",
+ "description": "If this outreach targets a segment of your audience."
+ },
+ "report_summary": {
+ "type": "object",
+ "title": "Report Summary",
+ "description": "High level reporting stats for an outreach.",
+ "properties": {
+ "opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_opens": {
+ "type": "integer"
+ },
+ "unique_opens": {
+ "type": "integer"
+ },
+ "proxy_excluded_unique_opens": {
+ "type": "integer"
+ },
+ "open_rate": {
+ "type": "number"
+ },
+ "proxy_excluded_open_rate": {
+ "type": "number"
+ },
+ "clicks": {
+ "type": "integer"
+ },
+ "subscriber_clicks": {
+ "type": "integer"
+ },
+ "click_rate": {
+ "type": "number"
+ },
+ "visits": {
+ "type": "integer"
+ },
+ "unique_visits": {
+ "type": "integer"
+ },
+ "conversion_rate": {
+ "type": "number"
+ },
+ "subscribes": {
+ "type": "integer"
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ },
+ "average_order_revenue": {
+ "type": "number"
+ }
+ }
+ },
+ "impressions": {
+ "type": "number"
+ },
+ "reach": {
+ "type": "integer"
+ },
+ "engagements": {
+ "type": "integer"
+ },
+ "total_sent": {
+ "type": "integer"
+ }
+ }
+ },
+ "recipients": {
+ "type": "object",
+ "title": "Recipients",
+ "description": "High level audience information for who the outreach targets.",
+ "properties": {
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The unique list id."
+ },
+ "list_is_active": {
+ "type": "boolean",
+ "title": "List Status",
+ "description": "The status of the list used, namely if it's deleted or disabled.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list.",
+ "readOnly": true
+ },
+ "segment_text": {
+ "type": "string",
+ "title": "Segment Text",
+ "description": "A description of the [segment](https://mailchimp.com/help/save-and-manage-segments/) used for the campaign. Formatted as a string marked up with HTML.",
+ "readOnly": true
+ },
+ "recipient_count": {
+ "type": "integer",
+ "title": "Recipient Count",
+ "description": "Count of the recipients on the associated list. Formatted as an integer.",
+ "readOnly": true
+ },
+ "segment_opts": {
+ "type": "object",
+ "title": "Segment Options",
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.",
+ "properties": {
+ "saved_segment_id": {
+ "type": "integer",
+ "title": "Saved Segment ID",
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "type": "string",
+ "title": "Prebuilt Segment Id",
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.",
+ "example": "subscribers-female"
+ },
+ "match": {
+ "type": "string",
+ "title": "Match Type",
+ "description": "Segment match type.",
+ "enum": [
+ "any",
+ "all"
+ ]
+ },
+ "conditions": {
+ "type": "array",
+ "title": "Segment Type",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "items": {
+ "x-discriminator": {
+ "type": "string",
+ "propertyName": "condition_type"
+ },
+ "x-oneOf": [
+ {
+ "type": "object",
+ "title": "Aim Segment",
+ "description": "Segment by interaction with a specific campaign.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Aim",
+ "enum": [
+ "Aim"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "aim"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a specific campaign.",
+ "example": "aim"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "open",
+ "click",
+ "sent",
+ "noopen",
+ "noclick",
+ "nosent"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.",
+ "example": "open"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Automation Segment",
+ "description": "Segment by interaction with an Automation workflow.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Automation",
+ "enum": [
+ "Automation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "automation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with an Automation workflow.",
+ "example": "automation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id for the automation workflow to segment against.",
+ "example": "2135217"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Poll Activity Segment",
+ "description": "Segment by poll activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "CampaignPoll",
+ "enum": [
+ "CampaignPoll"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "poll"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by poll activity.",
+ "example": "poll"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members have/have not interacted with a specific poll in a Mailchimp email.",
+ "example": "member"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the poll.",
+ "example": 409
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Conversation Segment",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Conversation",
+ "enum": [
+ "Conversation"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "conversation"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a campaign via Conversations.",
+ "example": "conversation"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of a member's interaction with a conversation. One of the following: has replied or has not replied.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.",
+ "example": "any"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Segment",
+ "description": "Segment by a specific date field.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Date",
+ "enum": [
+ "Date"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt",
+ "info_changed",
+ "ecomm_date"
+ ],
+ "title": "Segment Field",
+ "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.",
+ "example": "timestamp_opt"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "within",
+ "notwithin"
+ ],
+ "title": "Segment Operator",
+ "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.",
+ "example": "date"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra Value",
+ "description": "When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.",
+ "example": "2015-01-30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Client Segment",
+ "description": "Segment by use of a particular email client.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailClient",
+ "enum": [
+ "EmailClient"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "email_client"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by use of a particular email client.",
+ "example": "email_client"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "client_is",
+ "client_not"
+ ],
+ "title": "Segment Operator",
+ "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.",
+ "example": "client_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The name of the email client.",
+ "example": "Gmail"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Language Segment",
+ "description": "Segment by language.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Language",
+ "enum": [
+ "Language"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "language"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's language.",
+ "example": "language"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's language is or is not set to a specific language.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "A two-letter language identifier.",
+ "example": "en"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Member Rating Segment",
+ "description": "Segment by member rating.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "MemberRating",
+ "enum": [
+ "MemberRating"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "rating"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by member rating.",
+ "example": "rating"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The star rating number to segment against.",
+ "example": 4
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Signup Source Segment",
+ "description": "Segment by signup source.",
+ "required": [
+ "field",
+ "condition_type",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "enum": [
+ "SignupSource"
+ ],
+ "x-value": "SignupSource",
+ "title": "Type"
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "source"
+ ],
+ "title": "Segment Field",
+ "example": "source"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "source_is",
+ "source_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's signup source was/was not a particular value.",
+ "example": "source_is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The signup source.",
+ "example": "List Import"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Survey Monkey Segment",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SurveyMonkey",
+ "enum": [
+ "SurveyMonkey"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "survey_monkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by interaction with a SurveyMonkey survey.",
+ "example": "survey_monkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "started",
+ "completed",
+ "not_started",
+ "not_completed"
+ ],
+ "title": "Segment Operator",
+ "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.",
+ "example": "started"
+ },
+ "value": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey monkey survey.",
+ "example": "32179586"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "VIP Segment",
+ "description": "Segment by VIP status.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "VIP",
+ "enum": [
+ "VIP"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "gmonkey"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by VIP status.",
+ "example": "gmonkey"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is or is not marked as VIP.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Interests Segment",
+ "description": "Segment by an interest group merge field.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "Interests",
+ "enum": [
+ "Interests"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.",
+ "example": "interests-123"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "interestcontains",
+ "interestcontainsall",
+ "interestnotcontains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member is a part of one, all, or none of the groups.",
+ "example": "interestcontains"
+ },
+ "value": {
+ "type": "array",
+ "title": "Segment Value",
+ "description": "An array containing strings, each representing a group id.",
+ "items": {
+ "type": "string",
+ "example": [
+ "44401",
+ "44405",
+ "44409"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Category Segment",
+ "description": "Segment by purchases in specific items or categories.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommCategory",
+ "enum": [
+ "EcommCategory"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_cat",
+ "ecomm_prod"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases in specific items or categories.",
+ "example": "ecomm_cat"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The ecommerce category/item information.",
+ "example": "Product"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Number Segment",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommNumber",
+ "enum": [
+ "EcommNumber"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_avg",
+ "ecomm_orders",
+ "ecomm_prod_all",
+ "ecomm_avg_ord"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.",
+ "example": "ecomm_orders"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Segment",
+ "description": "Segment by whether someone has purchased anything.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommPurchased",
+ "enum": [
+ "EcommPurchased"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_purchased"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by whether someone has purchased anything.",
+ "example": "ecomm_purchased"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have have ('member') or have not ('notmember') purchased.",
+ "example": "member"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Spent Segment",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommSpent",
+ "enum": [
+ "EcommSpent"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_spent_one",
+ "ecomm_spent_all"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by amount spent on a single order or across all orders.",
+ "example": "ecomm_spent_one"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have spent 'more' or 'less' than then specified value.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The total amount a member spent.",
+ "example": 42
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Ecommerce Purchased Store Segment",
+ "description": "Segment by purchases from a specific store.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EcommStore",
+ "enum": [
+ "EcommStore"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ecomm_store"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by purchases from a specific store.",
+ "example": "ecomm_store"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have or have not purchased from a specific store.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Operator",
+ "description": "The store id to segment against.",
+ "example": "289"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Activity Segment",
+ "description": "Segment by Goal activity.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalActivity",
+ "enum": [
+ "GoalActivity"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by Goal activity.",
+ "example": "goal"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "goal_not",
+ "contains",
+ "goal_notcontain",
+ "starts",
+ "ends"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The URL to check Goal activity against."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Goal Timestamp Segment",
+ "description": "Segment by most recent interaction with a website.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "GoalTimestamp",
+ "enum": [
+ "GoalTimestamp"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "goal_last_visited"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by most recent interaction with a website.",
+ "example": "goal_last_visited"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "greater",
+ "less",
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the website activity happened after, before, or at a given timestamp.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The date to check Goal activity against.",
+ "example": "2015-07-20 19:45:21"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Similar Subscribers Segment Member Segment",
+ "description": "Segment by similar subscribers.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "FuzzySegment",
+ "enum": [
+ "FuzzySegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "fuzzy_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by similar subscribers.",
+ "example": "fuzzy_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "fuzzy_is",
+ "fuzzy_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a 'similar subscribers' segment.",
+ "example": "fuzzy_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the 'similar subscribers' segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Static Segment Member Segment",
+ "description": "Segment by a given static segment.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "StaticSegment",
+ "enum": [
+ "StaticSegment"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "static_segment"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by a given static segment.",
+ "example": "static_segment"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "static_is",
+ "static_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/are not apart of a static segment.",
+ "example": "static_is"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The id for the static segment.",
+ "example": 48433
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Location-Based Segment",
+ "description": "Segment by a specific country or US state.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoCountryState",
+ "enum": [
+ "IPGeoCountryState"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeocountry",
+ "ipgeonotcountry",
+ "ipgeostate",
+ "ipgeonotstate"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific country or US state.",
+ "example": "ipgeocountry"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "The two-letter country code or US state abbreviation.",
+ "example": "US"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Geolocation Segment",
+ "description": "Segment by a specific geographic region.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "addr",
+ "lat",
+ "lng"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoIn",
+ "enum": [
+ "IPGeoIn"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoin",
+ "ipgeonotin"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific geographic region.",
+ "example": "ipgeoin"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 42
+ },
+ "addr": {
+ "type": "string",
+ "title": "Segment Location Address",
+ "description": "The address of the target location.",
+ "example": "Atlanta, GA, USA"
+ },
+ "lat": {
+ "type": "string",
+ "title": "Segment Location Latitude",
+ "description": "The latitude of the target location.",
+ "example": "33.7489954"
+ },
+ "lng": {
+ "type": "string",
+ "title": "Segment Location Longitude",
+ "description": "The longitude of the target location.",
+ "example": "-84.3879824"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "US Zip Code Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoInZip",
+ "enum": [
+ "IPGeoInZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoinzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are within a specific US zip code.",
+ "example": "ipgeoinzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The radius of the target location.",
+ "example": 25
+ },
+ "extra": {
+ "type": "integer",
+ "title": "Extra Data",
+ "description": "The zip code to segment against.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Unknown Location-Based Segment",
+ "description": "Segment members whose location information is unknown.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoUnknown",
+ "enum": [
+ "IPGeoUnknown"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeounknown"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members for which location information is unknown.",
+ "example": "ipgeounknown"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Zip Code Location-Based Segment",
+ "description": "Segment by a specific US ZIP code.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "IPGeoZip",
+ "enum": [
+ "IPGeoZip"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "ipgeo"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting subscribers who are within a specific location.",
+ "example": "ipgeo"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "ipgeoiszip",
+ "ipgeonotzip"
+ ],
+ "title": "Segment Operator",
+ "description": "Segment members who are/are not within a specific US zip code.",
+ "example": "ipgeonotzip"
+ },
+ "value": {
+ "type": "integer",
+ "title": "Segment Data",
+ "description": "The 5-digit zip code.",
+ "example": 30318
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Age Segment",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialAge",
+ "enum": [
+ "SocialAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_age"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by age ranges in Social Profiles data.",
+ "example": "social_age"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-54",
+ "55+"
+ ],
+ "title": "Segment Operator",
+ "description": "The age range to segment.",
+ "example": "35-54"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Gender Segment",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialGender",
+ "enum": [
+ "SocialGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by listed gender in Social Profiles data.",
+ "example": "social_gender"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The Social Profiles gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Influence Segment",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialInfluence",
+ "enum": [
+ "SocialInfluence"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_influence"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by influence rating in Social Profiles data.",
+ "example": "social_influence"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who have a rating that is/not or greater/less than the rating provided.",
+ "example": "greater"
+ },
+ "value": {
+ "type": "number",
+ "title": "Segment Operator",
+ "description": "The Social Profiles influence rating to segment.",
+ "example": 2
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkMember",
+ "enum": [
+ "SocialNetworkMember"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "member",
+ "notmember"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not on a given social network.",
+ "example": "member"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter",
+ "facebook",
+ "linkedin",
+ "flickr",
+ "foursquare",
+ "lastfm",
+ "myspace",
+ "quora",
+ "vimeo",
+ "yelp",
+ "youtube"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Social Profiles Social Network Follow Segment",
+ "description": "Segment by social network in Social Profiles data.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SocialNetworkFollow",
+ "enum": [
+ "SocialNetworkFollow"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "social_network"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by social network in Social Profiles data.",
+ "example": "social_network"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "follow",
+ "notfollow"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not following a linked account on a given social network.",
+ "example": "follow"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "twitter_follow"
+ ],
+ "title": "Segment Operator",
+ "description": "The social network to segment against.",
+ "example": "twitter_follow"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address Merge Field Segment",
+ "description": "Segment by an address-type merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "AddressMerge",
+ "enum": [
+ "AddressMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address-type merge field to segment.",
+ "example": "MMERGE3"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "contains",
+ "notcontain",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field contains/does not contain a value or is/is not blank.",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Atlanta"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Address/Zip Merge Field Segment",
+ "description": "Segment by an address-type merge field within a given distance.",
+ "required": [
+ "field",
+ "op",
+ "value",
+ "extra"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "ZipMerge",
+ "enum": [
+ "ZipMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "An address or zip-type merge field to segment.",
+ "example": "MMERGE2"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "geoin"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's address merge field is within a given distance from a city or zip.",
+ "example": "geoin"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The distance from the city/zip.",
+ "example": "25"
+ },
+ "extra": {
+ "type": "string",
+ "title": "Segment Extra",
+ "description": "The city or the zip being used to segment against.",
+ "example": "30318"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Birthday Merge Field Segment",
+ "description": "Segment by a contact's birthday.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "BirthdayMerge",
+ "enum": [
+ "BirthdayMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE4"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's birthday merge information is/is not a certain date or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against (mm/dd).",
+ "example": "01/30"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Date Merge Field Segment",
+ "description": "Segment by a given date merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "DateMerge",
+ "enum": [
+ "DateMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A date merge field to segment.",
+ "example": "MMERGE5"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "less",
+ "blank",
+ "blank_not",
+ "greater"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "A date to segment against.",
+ "example": "01/30/2015"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Dropdown/Radio Merge Field Segment",
+ "description": "An individual segment condition",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "SelectMerge",
+ "enum": [
+ "SelectMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A merge field to segment.",
+ "example": "MMERGE6"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "blank",
+ "blank_not",
+ "notcontain",
+ "contains"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not a value or is/is not blank.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text merge field with.",
+ "example": "Second Choice"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Text or Number Merge Field Segment",
+ "description": "Segment by a given text or number merge field.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "TextMerge",
+ "enum": [
+ "TextMerge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "title": "Segment Field",
+ "description": "A text or number merge field to segment.",
+ "example": "MMERGE7"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less",
+ "blank",
+ "blank_not"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value",
+ "example": "contains"
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to segment a text or number merge field with.",
+ "example": "Freddie's Jokes"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Email Segment",
+ "description": "Segment by email address.",
+ "required": [
+ "field",
+ "op"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "EmailAddress",
+ "enum": [
+ "EmailAddress"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "merge0",
+ "EMAIL"
+ ],
+ "title": "Segment Field",
+ "description": "Segmenting based off of a subscriber's email address.",
+ "example": "EMAIL"
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not",
+ "contains",
+ "notcontain",
+ "starts",
+ "ends",
+ "greater",
+ "less"
+ ],
+ "title": "Segment Operator",
+ "description": "Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Value",
+ "description": "The value to compare the email against.",
+ "example": "urist.mcvankab@freddiesjokes.com"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Gender Segment",
+ "description": "Segment by predicted gender.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedGender",
+ "enum": [
+ "PredictedGender"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_gender"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted gender."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is",
+ "not"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted gender to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "Predicted Age Segment",
+ "description": "Segment by predicted age.",
+ "required": [
+ "field",
+ "op",
+ "value"
+ ],
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "PredictedAge",
+ "enum": [
+ "PredictedAge"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "predicted_age_range"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by predicted age."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "is"
+ ],
+ "title": "Segment Operator",
+ "description": "Members who are/not the exact criteria listed.",
+ "example": "is"
+ },
+ "value": {
+ "type": "string",
+ "enum": [
+ "18-24",
+ "25-34",
+ "35-44",
+ "45-54",
+ "55-64",
+ "65+"
+ ],
+ "title": "Segment Operator",
+ "description": "The predicted age to segment.",
+ "example": "female"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "title": "New Subscribers Prebuilt Segment",
+ "description": "Segment by when people subscribed.",
+ "properties": {
+ "condition_type": {
+ "type": "string",
+ "x-value": "NewSubscribers",
+ "enum": [
+ "NewSubscribers"
+ ]
+ },
+ "field": {
+ "type": "string",
+ "enum": [
+ "timestamp_opt"
+ ],
+ "title": "Segment Field",
+ "description": "Segment by when people subscribed."
+ },
+ "op": {
+ "type": "string",
+ "enum": [
+ "date_within"
+ ],
+ "title": "Segment Operator",
+ "description": "Whe the event took place, namely within a time frame."
+ },
+ "value": {
+ "type": "string",
+ "title": "Segment Data",
+ "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "thumbnail": {
+ "type": "string",
+ "title": "Thumbnail",
+ "description": "The URL of the thumbnail for this outreach."
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "email_source_name": {
+ "type": "string",
+ "title": "Ad: Email Source Name"
+ },
+ "paused_at": {
+ "type": "string",
+ "title": "Ad: Paused At",
+ "format": "date-time",
+ "description": "The date and time the ad was paused in ISO 8601 format."
+ },
+ "end_time": {
+ "type": "string",
+ "title": "Ad: End Time",
+ "format": "date-time",
+ "description": "The date and time the ad was ended in ISO 8601 format."
+ },
+ "needs_attention": {
+ "type": "boolean",
+ "title": "Ad: Needs Attention",
+ "description": "If the ad has a problem and needs attention."
+ },
+ "was_canceled_by_facebook": {
+ "type": "boolean",
+ "title": "Ad: Was Canceled By Facebook"
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "channel": {
+ "type": "object",
+ "description": "Channel settings",
+ "properties": {
+ "fb_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for facebook feed",
+ "example": true
+ },
+ "fb_placement_audience": {
+ "type": "boolean",
+ "description": "Is this for facebook audience",
+ "example": false
+ },
+ "ig_placement_feed": {
+ "type": "boolean",
+ "description": "Is this for instagram feed",
+ "example": false
+ }
+ }
+ },
+ "audience": {
+ "type": "object",
+ "description": "Audience settings",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Type of the audience",
+ "enum": [
+ "Custom Audience",
+ "Lookalike Audience",
+ "Interest-based Audience"
+ ]
+ },
+ "source_type": {
+ "type": "string",
+ "description": "List or Facebook based audience",
+ "enum": [
+ "facebook",
+ "list"
+ ]
+ },
+ "email_source": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Email source name"
+ },
+ "type": {
+ "type": "string",
+ "description": "Type of the email source"
+ },
+ "is_segment": {
+ "type": "boolean",
+ "description": "Is the source reference a segment"
+ },
+ "segment_type": {
+ "type": "string",
+ "description": "Segment type if this source is tied to a segment"
+ },
+ "list_name": {
+ "type": "string",
+ "description": "Associated list name to the source"
+ }
+ }
+ },
+ "include_source_in_target": {
+ "type": "boolean",
+ "description": "To include list contacts as part of audience"
+ },
+ "lookalike_country_code": {
+ "type": "string",
+ "description": "To find similar audience in given country"
+ },
+ "targeting_specs": {
+ "type": "object",
+ "properties": {
+ "gender": {
+ "type": "integer",
+ "enum": [
+ 0,
+ 1,
+ 2
+ ]
+ },
+ "min_age": {
+ "type": "integer"
+ },
+ "max_age": {
+ "type": "integer"
+ },
+ "locations": {
+ "type": "object",
+ "properties": {
+ "countries": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cities": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "zips": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "interests": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "budget": {
+ "type": "object",
+ "properties": {
+ "duration": {
+ "type": "integer",
+ "description": "Duration of the ad in seconds",
+ "example": 86400
+ },
+ "total_amount": {
+ "type": "number",
+ "description": "Total budget of the ad",
+ "example": 500
+ },
+ "currency_code": {
+ "type": "string",
+ "description": "Currency code",
+ "example": "USD"
+ }
+ }
+ },
+ "report_summary": {
+ "type": "object",
+ "description": "Report summary of facebook ad",
+ "properties": {
+ "reach": {
+ "type": "integer"
+ },
+ "impressions": {
+ "type": "integer"
+ },
+ "clicks": {
+ "type": "integer"
+ },
+ "click_rate": {
+ "type": "number"
+ },
+ "unique_clicks": {
+ "type": "integer"
+ },
+ "first_time_buyers": {
+ "type": "integer"
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "total_products_sold": {
+ "type": "integer"
+ },
+ "total_orders": {
+ "type": "integer"
+ },
+ "average_order_amount": {
+ "type": "object",
+ "properties": {
+ "amount": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "cost_per_click": {
+ "type": "object",
+ "properties": {
+ "amount": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "average_daily_budget": {
+ "type": "object",
+ "properties": {
+ "amount": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ }
+ }
+ },
+ "likes": {
+ "type": "integer"
+ },
+ "comments": {
+ "type": "integer"
+ },
+ "shares": {
+ "type": "integer"
+ },
+ "has_extended_ad_duration": {
+ "type": "boolean"
+ },
+ "extended_at": {
+ "type": "object",
+ "properties": {
+ "datetime": {
+ "type": "string"
+ },
+ "timezone": {
+ "type": "string"
+ }
+ }
+ },
+ "return_on_investment": {
+ "type": "number"
+ }
+ }
+ },
+ "audience_activity": {
+ "type": "object",
+ "properties": {
+ "clicks": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string"
+ },
+ "clicks": {
+ "type": "integer"
+ }
+ }
+ }
+ },
+ "impressions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string"
+ },
+ "impressions": {
+ "type": "integer"
+ }
+ }
+ }
+ },
+ "revenue": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string"
+ },
+ "revenue": {
+ "type": "number"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ {
+ "type": "object",
+ "properties": {
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_facebook_ad_report",
+ "methodNameCamel": "getFacebookAdReport"
+ },
+ "summary": "Get facebook ad report",
+ "operationId": "getReportingFacebookAdsId",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/facebook-ads/{outreach_id}/ecommerce-product-activity": {
+ "get": {
+ "description": "Get breakdown of product activity for an outreach.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ },
+ {
+ "in": "path",
+ "name": "outreach_id",
+ "x-title": "Outreach ID",
+ "type": "string",
+ "required": true,
+ "description": "The outreach id."
+ },
+ {
+ "name": "sort_field",
+ "x-title": "Sort By Field",
+ "description": "Returns files sorted by the specified field.",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "title",
+ "total_revenue",
+ "total_purchased"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ecommerce Product Activity Instance",
+ "schema": {
+ "type": "object",
+ "description": "A collection of ecommerce products.",
+ "properties": {
+ "products": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "title": {
+ "type": "string"
+ },
+ "sku": {
+ "type": "string"
+ },
+ "image_url": {
+ "type": "string"
+ },
+ "total_revenue": {
+ "type": "number"
+ },
+ "total_purchased": {
+ "type": "number"
+ },
+ "currency_code": {
+ "type": "string"
+ },
+ "recommendation_total": {
+ "type": "integer"
+ },
+ "recommendation_purchased": {
+ "type": "integer"
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_facebook_ad_product_activity_report",
+ "methodNameCamel": "getFacebookAdProductActivityReport"
+ },
+ "summary": "List facebook ecommerce report",
+ "operationId": "getReportingFacebookAdsIdEcommerceProductActivity",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/landing-pages/{outreach_id}": {
+ "get": {
+ "description": "Get report of a landing page.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "outreach_id",
+ "x-title": "Outreach ID",
+ "type": "string",
+ "required": true,
+ "description": "The outreach id."
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Landing Page Report Instance",
+ "schema": {
+ "type": "object",
+ "title": "Landing Page Report",
+ "description": "A summary of an individual landing page's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Landing Page ID",
+ "description": "A string that uniquely identifies this landing page.",
+ "readOnly": true,
+ "example": "00dfc2e1f0"
+ },
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name of this landing page the user will see.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The name of the landing page the user's customers will see.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "Url",
+ "description": "The landing page url.",
+ "readOnly": true
+ },
+ "published_at": {
+ "type": "string",
+ "title": "Published At",
+ "description": "The time this landing page was published.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "unpublished_at": {
+ "type": "string",
+ "title": "Unpublished At",
+ "description": "The time this landing page was unpublished.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of the landing page.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List Id",
+ "description": "The list id connected to this landing page.",
+ "readOnly": true
+ },
+ "visits": {
+ "type": "integer",
+ "title": "Visits",
+ "description": "The number of visits to this landing pages.",
+ "readOnly": true
+ },
+ "unique_visits": {
+ "type": "integer",
+ "title": "Unique Visits",
+ "description": "The number of unique visits to this landing pages.",
+ "readOnly": true
+ },
+ "subscribes": {
+ "type": "integer",
+ "title": "Subscribes",
+ "description": "The number of subscribes to this landing pages.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The number of clicks to this landing pages.",
+ "readOnly": true
+ },
+ "conversion_rate": {
+ "type": "number",
+ "title": "Conversion rate",
+ "description": "The percentage of people who visited your landing page and were added to your list.",
+ "readOnly": true
+ },
+ "timeseries": {
+ "type": "object",
+ "properties": {
+ "daily_stats": {
+ "type": "object",
+ "title": "Daily clicks and visits data",
+ "description": "The clicks and visits data from the last seven days.",
+ "readOnly": true,
+ "properties": {
+ "clicks": {
+ "type": "array",
+ "title": "Clicks",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 13
+ }
+ }
+ }
+ },
+ "visits": {
+ "type": "array",
+ "title": "Visits",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 11
+ }
+ }
+ }
+ },
+ "unique_visits": {
+ "type": "array",
+ "title": "Unique Visits",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 1
+ }
+ }
+ }
+ }
+ }
+ },
+ "weekly_stats": {
+ "type": "object",
+ "title": "Weekly clicks and visits data",
+ "description": "The clicks and visits data from the last five weeks.",
+ "readOnly": true,
+ "properties": {
+ "clicks": {
+ "type": "array",
+ "title": "Clicks",
+ "description": "The total number of clicks in a week.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 23
+ }
+ }
+ }
+ },
+ "visits": {
+ "type": "array",
+ "title": "Visits",
+ "description": "The total number of visits in a week.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 49
+ }
+ }
+ }
+ },
+ "unique_visits": {
+ "type": "array",
+ "title": "Unique Visits",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 1
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue of this landing page.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency code",
+ "description": "The user's currency code.",
+ "readOnly": true
+ },
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total number of orders associated with this landing page.",
+ "readOnly": true
+ },
+ "average_order_revenue": {
+ "type": "number",
+ "title": "Average Order Revenue",
+ "description": "The average order revenue of this landing page.",
+ "readOnly": true
+ }
+ }
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Landing Page Web ID",
+ "description": "The ID used in the Mailchimp web application.",
+ "readOnly": true,
+ "example": 33345484
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "List Name",
+ "readOnly": true,
+ "example": "Test List"
+ },
+ "signup_tags": {
+ "type": "array",
+ "title": "Signup Tags",
+ "description": "A list of tags associated to the landing page.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "title": "Tag",
+ "properties": {
+ "tag_id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The unique id for the tag.",
+ "readOnly": true
+ },
+ "tag_name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_landing_page_report",
+ "methodNameCamel": "getLandingPageReport"
+ },
+ "summary": "Get landing page report",
+ "operationId": "getReportingLandingPagesId",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/landing-pages": {
+ "get": {
+ "description": "Get reports of landing pages.",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of Landing Page Report Instances",
+ "schema": {
+ "type": "object",
+ "description": "A collection of landing pages.",
+ "properties": {
+ "landing_pages": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Landing Page Report",
+ "description": "A summary of an individual landing page's settings and content.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Landing Page ID",
+ "description": "A string that uniquely identifies this landing page.",
+ "readOnly": true,
+ "example": "00dfc2e1f0"
+ },
+ "name": {
+ "type": "string",
+ "title": "Name",
+ "description": "The name of this landing page the user will see.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The name of the landing page the user's customers will see.",
+ "readOnly": true
+ },
+ "url": {
+ "type": "string",
+ "title": "Url",
+ "description": "The landing page url.",
+ "readOnly": true
+ },
+ "published_at": {
+ "type": "string",
+ "title": "Published At",
+ "description": "The time this landing page was published.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "unpublished_at": {
+ "type": "string",
+ "title": "Unpublished At",
+ "description": "The time this landing page was unpublished.",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The status of the landing page.",
+ "readOnly": true
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List Id",
+ "description": "The list id connected to this landing page.",
+ "readOnly": true
+ },
+ "visits": {
+ "type": "integer",
+ "title": "Visits",
+ "description": "The number of visits to this landing pages.",
+ "readOnly": true
+ },
+ "unique_visits": {
+ "type": "integer",
+ "title": "Unique Visits",
+ "description": "The number of unique visits to this landing pages.",
+ "readOnly": true
+ },
+ "subscribes": {
+ "type": "integer",
+ "title": "Subscribes",
+ "description": "The number of subscribes to this landing pages.",
+ "readOnly": true
+ },
+ "clicks": {
+ "type": "integer",
+ "title": "Clicks",
+ "description": "The number of clicks to this landing pages.",
+ "readOnly": true
+ },
+ "conversion_rate": {
+ "type": "number",
+ "title": "Conversion rate",
+ "description": "The percentage of people who visited your landing page and were added to your list.",
+ "readOnly": true
+ },
+ "timeseries": {
+ "type": "object",
+ "properties": {
+ "daily_stats": {
+ "type": "object",
+ "title": "Daily clicks and visits data",
+ "description": "The clicks and visits data from the last seven days.",
+ "readOnly": true,
+ "properties": {
+ "clicks": {
+ "type": "array",
+ "title": "Clicks",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 13
+ }
+ }
+ }
+ },
+ "visits": {
+ "type": "array",
+ "title": "Visits",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 11
+ }
+ }
+ }
+ },
+ "unique_visits": {
+ "type": "array",
+ "title": "Unique Visits",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 1
+ }
+ }
+ }
+ }
+ }
+ },
+ "weekly_stats": {
+ "type": "object",
+ "title": "Weekly clicks and visits data",
+ "description": "The clicks and visits data from the last five weeks.",
+ "readOnly": true,
+ "properties": {
+ "clicks": {
+ "type": "array",
+ "title": "Clicks",
+ "description": "The total number of clicks in a week.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 23
+ }
+ }
+ }
+ },
+ "visits": {
+ "type": "array",
+ "title": "Visits",
+ "description": "The total number of visits in a week.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 49
+ }
+ }
+ }
+ },
+ "unique_visits": {
+ "type": "array",
+ "title": "Unique Visits",
+ "items": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "title": "Date",
+ "readOnly": true,
+ "example": "2018-04-25"
+ },
+ "val": {
+ "type": "integer",
+ "title": "Value",
+ "readOnly": true,
+ "example": 1
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "ecommerce": {
+ "type": "object",
+ "properties": {
+ "total_revenue": {
+ "type": "number",
+ "title": "Total Revenue",
+ "description": "The total revenue of this landing page.",
+ "readOnly": true
+ },
+ "currency_code": {
+ "type": "string",
+ "title": "Currency code",
+ "description": "The user's currency code.",
+ "readOnly": true
+ },
+ "total_orders": {
+ "type": "integer",
+ "title": "Total Orders",
+ "description": "The total number of orders associated with this landing page.",
+ "readOnly": true
+ },
+ "average_order_revenue": {
+ "type": "number",
+ "title": "Average Order Revenue",
+ "description": "The average order revenue of this landing page.",
+ "readOnly": true
+ }
+ }
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Landing Page Web ID",
+ "description": "The ID used in the Mailchimp web application.",
+ "readOnly": true,
+ "example": 33345484
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "List Name",
+ "readOnly": true,
+ "example": "Test List"
+ },
+ "signup_tags": {
+ "type": "array",
+ "title": "Signup Tags",
+ "description": "A list of tags associated to the landing page.",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "title": "Tag",
+ "properties": {
+ "tag_id": {
+ "type": "integer",
+ "title": "Tag ID",
+ "description": "The unique id for the tag.",
+ "readOnly": true
+ },
+ "tag_name": {
+ "type": "string",
+ "title": "Tag Name",
+ "description": "The name of the tag.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_landing_page_reports_all",
+ "methodNameCamel": "getLandingPageReportsAll"
+ },
+ "summary": "List landing pages reports",
+ "operationId": "getReportingLandingPages",
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/surveys": {
+ "get": {
+ "summary": "List survey reports",
+ "description": "Get reports for surveys.",
+ "operationId": "getReportingSurveys",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "count",
+ "x-title": "Count",
+ "in": "query",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "required": false,
+ "default": 10,
+ "maximum": 1000,
+ "type": "integer"
+ },
+ {
+ "name": "offset",
+ "x-title": "Offset",
+ "in": "query",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "required": false,
+ "default": 0,
+ "type": "integer"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of Survey Report Instances",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "surveys": {
+ "type": "array",
+ "title": "Surveys",
+ "description": "The surveys that have reports available.",
+ "items": {
+ "type": "object",
+ "title": "Survey Report",
+ "description": "The report for a survey.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "A string that uniquely identifies this survey.",
+ "readOnly": true,
+ "example": "040d2c2e1f0"
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Survey Web ID",
+ "description": "The ID used in the Mailchimp web application. View this survey report in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/surveys/results?survey_id={web_id}`.",
+ "readOnly": true,
+ "example": 165
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID of the list connected to this survey.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list connected to this survey.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of the survey.",
+ "readOnly": true,
+ "example": "New product ideas"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for the survey.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The survey's status.",
+ "readOnly": true,
+ "example": "published",
+ "enum": [
+ "published",
+ "unpublished"
+ ]
+ },
+ "published_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Published At",
+ "description": "The date and time the survey was published in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "created_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Created At",
+ "description": "The date and time the survey was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Updated At",
+ "description": "The date and time the survey was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "total_responses": {
+ "type": "integer",
+ "title": "Total Responses",
+ "description": "The total number of responses to this survey.",
+ "readOnly": true,
+ "example": 810
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey_reports_all",
+ "methodNameCamel": "getSurveyReportsAll"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/surveys/{survey_id}": {
+ "get": {
+ "summary": "Get survey report",
+ "description": "Get report for a survey.",
+ "operationId": "getReportingSurveysId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Survey Report Instance",
+ "schema": {
+ "type": "object",
+ "title": "Survey Report",
+ "description": "The report for a survey.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "A string that uniquely identifies this survey.",
+ "readOnly": true,
+ "example": "040d2c2e1f0"
+ },
+ "web_id": {
+ "type": "integer",
+ "title": "Survey Web ID",
+ "description": "The ID used in the Mailchimp web application. View this survey report in your Mailchimp account at `https://{dc}.admin.mailchimp.com/lists/surveys/results?survey_id={web_id}`.",
+ "readOnly": true,
+ "example": 165
+ },
+ "list_id": {
+ "type": "string",
+ "title": "List ID",
+ "description": "The ID of the list connected to this survey.",
+ "readOnly": true
+ },
+ "list_name": {
+ "type": "string",
+ "title": "List Name",
+ "description": "The name of the list connected to this survey.",
+ "readOnly": true
+ },
+ "title": {
+ "type": "string",
+ "title": "Title",
+ "description": "The title of the survey.",
+ "readOnly": true,
+ "example": "New product ideas"
+ },
+ "url": {
+ "type": "string",
+ "title": "URL",
+ "description": "The URL for the survey.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Status",
+ "description": "The survey's status.",
+ "readOnly": true,
+ "example": "published",
+ "enum": [
+ "published",
+ "unpublished"
+ ]
+ },
+ "published_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Published At",
+ "description": "The date and time the survey was published in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "created_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Created At",
+ "description": "The date and time the survey was created in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "updated_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Updated At",
+ "description": "The date and time the survey was last updated in ISO 8601 format.",
+ "readOnly": true,
+ "example": "2017-08-04T11:09:01+00:00"
+ },
+ "total_responses": {
+ "type": "integer",
+ "title": "Total Responses",
+ "description": "The total number of responses to this survey.",
+ "readOnly": true,
+ "example": 810
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey_report",
+ "methodNameCamel": "getSurveyReport"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/surveys/{survey_id}/questions": {
+ "get": {
+ "summary": "List survey question reports",
+ "description": "Get reports for survey questions.",
+ "operationId": "getReportingSurveysIdQuestions",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of Survey Question Report Instances",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "questions": {
+ "type": "array",
+ "title": "Question Reports",
+ "description": "An array of reports for each question on the survey.",
+ "items": {
+ "type": "object",
+ "title": "Survey Question Report",
+ "description": "The details of a survey question's report.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Survey Question ID",
+ "description": "The ID of the survey question.",
+ "readOnly": true
+ },
+ "survey_id": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey.",
+ "readOnly": true
+ },
+ "query": {
+ "type": "string",
+ "title": "Query Text",
+ "description": "The query of the survey question.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Response Type",
+ "description": "The response type of the survey question.",
+ "enum": [
+ "pickOne",
+ "pickMany",
+ "range",
+ "text",
+ "email"
+ ],
+ "readOnly": true
+ },
+ "total_responses": {
+ "type": "integer",
+ "title": "Total Responses",
+ "description": "The total number of responses to this question.",
+ "readOnly": true,
+ "example": 810
+ },
+ "is_required": {
+ "type": "boolean",
+ "title": "Is Required",
+ "description": "Whether this survey question is required to answer.",
+ "readOnly": true
+ },
+ "has_other": {
+ "type": "boolean",
+ "title": "Has Other Option",
+ "description": "Whether this survey question has an 'other' option.",
+ "readOnly": true
+ },
+ "other_label": {
+ "type": "string",
+ "title": "Other Option Label",
+ "description": "Label used for the 'other' option of this survey question.",
+ "readOnly": true
+ },
+ "average_rating": {
+ "type": "number",
+ "format": "float",
+ "title": "Average Rating for a Range Question",
+ "description": "The average rating for this range question.",
+ "readOnly": true,
+ "example": 2.5
+ },
+ "range_low_label": {
+ "type": "string",
+ "title": "Range Low Label",
+ "description": "Label for the low end of the range.",
+ "readOnly": true
+ },
+ "range_high_label": {
+ "type": "string",
+ "title": "Range High Label",
+ "description": "Label for the high end of the range.",
+ "readOnly": true
+ },
+ "placeholder_label": {
+ "type": "string",
+ "title": "Placeholder Label",
+ "description": "Placeholder text for this survey question's answer box.",
+ "readOnly": true
+ },
+ "subscribe_checkbox_enabled": {
+ "type": "boolean",
+ "title": "Is Subscribe Checkbox Enabled",
+ "description": "Whether the subscribe checkbox is shown for this email question.",
+ "readOnly": true
+ },
+ "subscribe_checkbox_label": {
+ "type": "string",
+ "title": "Subscribe Checkbox Label",
+ "description": "Label used for the subscribe checkbox for this email question.",
+ "readOnly": true
+ },
+ "merge_field": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Merge Field ID",
+ "description": "An unchanging id for the merge field.",
+ "readOnly": true
+ },
+ "label": {
+ "type": "string",
+ "title": "Merge Field Label",
+ "description": "The [label](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ },
+ "options": {
+ "type": "array",
+ "title": "Options",
+ "description": "The answer choices for this question.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "label": {
+ "type": "string",
+ "title": "Option Label",
+ "description": "The label for this survey question option."
+ },
+ "id": {
+ "type": "string",
+ "title": "Option ID",
+ "description": "The ID for this survey question option."
+ },
+ "count": {
+ "type": "integer",
+ "title": "Response Count",
+ "description": "The count of responses that selected this survey question option."
+ }
+ }
+ },
+ "readOnly": true
+ },
+ "contact_counts": {
+ "type": "object",
+ "title": "Contact Counts",
+ "description": "For email question types, how many are new, known, or unknown contacts.",
+ "properties": {
+ "known": {
+ "type": "integer",
+ "title": "Known Contacts Count",
+ "description": "The number of known contacts that responded to this survey."
+ },
+ "unknown": {
+ "type": "integer",
+ "title": "Unknown Contacts Count",
+ "description": "The number of unknown contacts that responded to this survey."
+ },
+ "new": {
+ "type": "integer",
+ "title": "New Contacts Count",
+ "description": "The number of new contacts that responded to this survey."
+ }
+ }
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey_question_reports_all",
+ "methodNameCamel": "getSurveyQuestionReportsAll"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/surveys/{survey_id}/questions/{question_id}": {
+ "get": {
+ "summary": "Get survey question report",
+ "description": "Get report for a survey question.",
+ "operationId": "getReportingSurveysIdQuestionsId",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ },
+ {
+ "in": "path",
+ "name": "question_id",
+ "x-title": "Question ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey question."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Survey Question Report Instance",
+ "schema": {
+ "type": "object",
+ "title": "Survey Question Report",
+ "description": "The details of a survey question's report.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Survey Question ID",
+ "description": "The ID of the survey question.",
+ "readOnly": true
+ },
+ "survey_id": {
+ "type": "string",
+ "title": "Survey ID",
+ "description": "The unique ID of the survey.",
+ "readOnly": true
+ },
+ "query": {
+ "type": "string",
+ "title": "Query Text",
+ "description": "The query of the survey question.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Response Type",
+ "description": "The response type of the survey question.",
+ "enum": [
+ "pickOne",
+ "pickMany",
+ "range",
+ "text",
+ "email"
+ ],
+ "readOnly": true
+ },
+ "total_responses": {
+ "type": "integer",
+ "title": "Total Responses",
+ "description": "The total number of responses to this question.",
+ "readOnly": true,
+ "example": 810
+ },
+ "is_required": {
+ "type": "boolean",
+ "title": "Is Required",
+ "description": "Whether this survey question is required to answer.",
+ "readOnly": true
+ },
+ "has_other": {
+ "type": "boolean",
+ "title": "Has Other Option",
+ "description": "Whether this survey question has an 'other' option.",
+ "readOnly": true
+ },
+ "other_label": {
+ "type": "string",
+ "title": "Other Option Label",
+ "description": "Label used for the 'other' option of this survey question.",
+ "readOnly": true
+ },
+ "average_rating": {
+ "type": "number",
+ "format": "float",
+ "title": "Average Rating for a Range Question",
+ "description": "The average rating for this range question.",
+ "readOnly": true,
+ "example": 2.5
+ },
+ "range_low_label": {
+ "type": "string",
+ "title": "Range Low Label",
+ "description": "Label for the low end of the range.",
+ "readOnly": true
+ },
+ "range_high_label": {
+ "type": "string",
+ "title": "Range High Label",
+ "description": "Label for the high end of the range.",
+ "readOnly": true
+ },
+ "placeholder_label": {
+ "type": "string",
+ "title": "Placeholder Label",
+ "description": "Placeholder text for this survey question's answer box.",
+ "readOnly": true
+ },
+ "subscribe_checkbox_enabled": {
+ "type": "boolean",
+ "title": "Is Subscribe Checkbox Enabled",
+ "description": "Whether the subscribe checkbox is shown for this email question.",
+ "readOnly": true
+ },
+ "subscribe_checkbox_label": {
+ "type": "string",
+ "title": "Subscribe Checkbox Label",
+ "description": "Label used for the subscribe checkbox for this email question.",
+ "readOnly": true
+ },
+ "merge_field": {
+ "type": "object",
+ "title": "Merge Field",
+ "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "title": "Merge Field ID",
+ "description": "An unchanging id for the merge field.",
+ "readOnly": true
+ },
+ "label": {
+ "type": "string",
+ "title": "Merge Field Label",
+ "description": "The [label](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "title": "Merge Field Type",
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.",
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ },
+ "options": {
+ "type": "array",
+ "title": "Options",
+ "description": "The answer choices for this question.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "label": {
+ "type": "string",
+ "title": "Option Label",
+ "description": "The label for this survey question option."
+ },
+ "id": {
+ "type": "string",
+ "title": "Option ID",
+ "description": "The ID for this survey question option."
+ },
+ "count": {
+ "type": "integer",
+ "title": "Response Count",
+ "description": "The count of responses that selected this survey question option."
+ }
+ }
+ },
+ "readOnly": true
+ },
+ "contact_counts": {
+ "type": "object",
+ "title": "Contact Counts",
+ "description": "For email question types, how many are new, known, or unknown contacts.",
+ "properties": {
+ "known": {
+ "type": "integer",
+ "title": "Known Contacts Count",
+ "description": "The number of known contacts that responded to this survey."
+ },
+ "unknown": {
+ "type": "integer",
+ "title": "Unknown Contacts Count",
+ "description": "The number of unknown contacts that responded to this survey."
+ },
+ "new": {
+ "type": "integer",
+ "title": "New Contacts Count",
+ "description": "The number of new contacts that responded to this survey."
+ }
+ }
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey_question_report",
+ "methodNameCamel": "getSurveyQuestionReport"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/surveys/{survey_id}/questions/{question_id}/answers": {
+ "get": {
+ "summary": "List answers for question",
+ "description": "Get answers for a survey question.",
+ "operationId": "getReportingSurveysIdQuestionsIdAnswers",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ },
+ {
+ "in": "path",
+ "name": "question_id",
+ "x-title": "Question ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey question."
+ },
+ {
+ "name": "respondent_familiarity_is",
+ "x-title": "Respondent Familiarity Is",
+ "in": "query",
+ "description": "Filter survey responses by familiarity of the respondents.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "new",
+ "known",
+ "unknown"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of Survey Question Answers",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "answers": {
+ "type": "array",
+ "title": "Answers",
+ "description": "An array of answers for a question on the survey.",
+ "items": {
+ "type": "object",
+ "title": "Survey Question Answer",
+ "description": "The details of a survey question's answer.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "title": "Answer ID",
+ "description": "The ID of the answer.",
+ "readOnly": true
+ },
+ "value": {
+ "type": "string",
+ "title": "Value",
+ "description": "The raw text answer.",
+ "readOnly": true
+ },
+ "response_id": {
+ "type": "string",
+ "title": "Response ID",
+ "description": "The ID of the survey response.",
+ "readOnly": true
+ },
+ "submitted_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Submitted At",
+ "description": "The date and time when the survey response was submitted in ISO 8601 format.",
+ "readOnly": true
+ },
+ "contact": {
+ "type": "object",
+ "title": "Contact",
+ "description": "Information about the contact.",
+ "readOnly": true,
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "The ID of this contact.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Contact Status",
+ "description": "The contact's current status.",
+ "readOnly": true,
+ "enum": [
+ "Subscribed",
+ "Unsubscribed",
+ "Non-Subscribed",
+ "Cleaned",
+ "Archived"
+ ]
+ },
+ "email": {
+ "type": "string",
+ "title": "Contact Email",
+ "description": "The contact's email address.",
+ "readOnly": true
+ },
+ "phone": {
+ "type": "string",
+ "title": "Contact SMS Phone",
+ "description": "The contact's sms phone number.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "avatar_url": {
+ "type": "string",
+ "title": "Avatar URL",
+ "description": "URL for the contact's avatar or profile image.",
+ "readOnly": true
+ }
+ }
+ },
+ "is_new_contact": {
+ "type": "boolean",
+ "title": "Is New Contact",
+ "description": "If this contact was added to the Mailchimp audience via this survey.",
+ "readOnly": false
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey_question_answers",
+ "methodNameCamel": "getSurveyQuestionAnswers"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/surveys/{survey_id}/responses": {
+ "get": {
+ "summary": "List survey responses",
+ "description": "Get responses to a survey.",
+ "operationId": "getReportingSurveysIdResponses",
+ "parameters": [
+ {
+ "name": "fields",
+ "x-title": "Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "exclude_fields",
+ "x-title": "Exclude Fields",
+ "in": "query",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "required": false,
+ "type": "array",
+ "collectionFormat": "csv",
+ "items": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ },
+ {
+ "name": "answered_question",
+ "x-title": "Answered Question",
+ "in": "query",
+ "description": "The ID of the question that was answered.",
+ "required": false,
+ "type": "integer"
+ },
+ {
+ "name": "chose_answer",
+ "x-title": "Chose Answer",
+ "in": "query",
+ "description": "The ID of the option chosen to filter responses on.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "respondent_familiarity_is",
+ "x-title": "Respondent Familiarity Is",
+ "in": "query",
+ "description": "Filter survey responses by familiarity of the respondents.",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "new",
+ "known",
+ "unknown"
+ ]
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of survey responses",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "responses": {
+ "type": "array",
+ "title": "Responses",
+ "description": "An array of responses to a survey.",
+ "items": {
+ "type": "object",
+ "title": "Survey Respondents",
+ "description": "Survey respondent details.",
+ "properties": {
+ "response_id": {
+ "type": "string",
+ "title": "Response ID",
+ "description": "The ID for the survey response.",
+ "readOnly": true
+ },
+ "submitted_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Submitted At",
+ "description": "The date and time when the survey response was submitted in ISO 8601 format.",
+ "readOnly": true
+ },
+ "contact": {
+ "type": "object",
+ "title": "Contact",
+ "description": "Information about the contact.",
+ "readOnly": true,
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "The ID of this contact.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Contact Status",
+ "description": "The contact's current status.",
+ "readOnly": true,
+ "enum": [
+ "Subscribed",
+ "Unsubscribed",
+ "Non-Subscribed",
+ "Cleaned",
+ "Archived"
+ ]
+ },
+ "email": {
+ "type": "string",
+ "title": "Contact Email",
+ "description": "The contact's email address.",
+ "readOnly": true
+ },
+ "phone": {
+ "type": "string",
+ "title": "Contact SMS Phone",
+ "description": "The contact's sms phone number.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "avatar_url": {
+ "type": "string",
+ "title": "Avatar URL",
+ "description": "URL for the contact's avatar or profile image.",
+ "readOnly": true
+ }
+ }
+ },
+ "is_new_contact": {
+ "type": "boolean",
+ "title": "Is New Contact",
+ "description": "If this contact was added to the Mailchimp audience via this survey.",
+ "readOnly": false
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ },
+ "_links": {
+ "title": "Links",
+ "description": "A list of link types and descriptions for the API schema documents.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "title": "Resource Link",
+ "description": "This object represents a link from the resource where it is found to another resource or action that may be performed.",
+ "properties": {
+ "rel": {
+ "type": "string",
+ "title": "Rel",
+ "description": "As with an HTML 'rel' attribute, this describes the type of link.",
+ "readOnly": true
+ },
+ "href": {
+ "type": "string",
+ "title": "Href",
+ "description": "This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.",
+ "readOnly": true
+ },
+ "method": {
+ "type": "string",
+ "title": "Method",
+ "description": "The HTTP method that should be used when accessing the URL defined in 'href'.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ "OPTIONS",
+ "HEAD"
+ ],
+ "readOnly": true
+ },
+ "targetSchema": {
+ "type": "string",
+ "title": "Target Schema",
+ "description": "For GETs, this is a URL representing the schema that the response should conform to.",
+ "readOnly": true
+ },
+ "schema": {
+ "type": "string",
+ "title": "Schema",
+ "description": "For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.",
+ "readOnly": true
+ }
+ }
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey_responses_all",
+ "methodNameCamel": "getSurveyResponsesAll"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/reporting/surveys/{survey_id}/responses/{response_id}": {
+ "get": {
+ "summary": "Get survey response",
+ "description": "Get a single survey response.",
+ "operationId": "getReportingSurveysIdResponsesId",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "survey_id",
+ "x-title": "Survey ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey."
+ },
+ {
+ "in": "path",
+ "name": "response_id",
+ "x-title": "Response ID",
+ "type": "string",
+ "required": true,
+ "description": "The ID of the survey response."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get a single survey response.",
+ "schema": {
+ "type": "object",
+ "title": "Survey Response",
+ "description": "A single survey response.",
+ "properties": {
+ "response_id": {
+ "type": "string",
+ "title": "Response ID",
+ "description": "The ID for the survey response.",
+ "readOnly": true
+ },
+ "submitted_at": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Submitted At",
+ "description": "The date and time when the survey response was submitted in ISO 8601 format.",
+ "readOnly": true
+ },
+ "contact": {
+ "type": "object",
+ "title": "Contact",
+ "description": "Information about the contact.",
+ "readOnly": true,
+ "properties": {
+ "email_id": {
+ "type": "string",
+ "title": "Email ID",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "readOnly": true
+ },
+ "contact_id": {
+ "type": "string",
+ "title": "Contact ID",
+ "description": "The ID of this contact.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Contact Status",
+ "description": "The contact's current status.",
+ "readOnly": true,
+ "enum": [
+ "Subscribed",
+ "Unsubscribed",
+ "Non-Subscribed",
+ "Cleaned",
+ "Archived"
+ ]
+ },
+ "email": {
+ "type": "string",
+ "title": "Contact Email",
+ "description": "The contact's email address.",
+ "readOnly": true
+ },
+ "phone": {
+ "type": "string",
+ "title": "Contact SMS Phone",
+ "description": "The contact's sms phone number.",
+ "readOnly": true
+ },
+ "full_name": {
+ "type": "string",
+ "title": "Full Name",
+ "description": "The contact's full name.",
+ "readOnly": true
+ },
+ "consents_to_one_to_one_messaging": {
+ "type": "boolean",
+ "title": "Messaging Consent",
+ "description": "Indicates whether a contact consents to 1:1 messaging.",
+ "readOnly": true
+ },
+ "avatar_url": {
+ "type": "string",
+ "title": "Avatar URL",
+ "description": "URL for the contact's avatar or profile image.",
+ "readOnly": true
+ }
+ }
+ },
+ "is_new_contact": {
+ "type": "boolean",
+ "title": "Is New Contact",
+ "description": "If this contact was added to the Mailchimp audience via this survey.",
+ "readOnly": false
+ },
+ "results": {
+ "type": "array",
+ "title": "Results",
+ "description": "The survey questions and the answers to those questions.",
+ "items": {
+ "type": "object",
+ "title": "Response",
+ "description": "A single question and the response to that question.",
+ "properties": {
+ "question_id": {
+ "type": "string",
+ "title": "Question ID",
+ "description": "The unique ID for this question."
+ },
+ "question_type": {
+ "type": "string",
+ "title": "Question Type",
+ "description": "The type of question this is.",
+ "enum": [
+ "pickOne",
+ "pickMany",
+ "range",
+ "text",
+ "email"
+ ]
+ },
+ "query": {
+ "type": "string",
+ "title": "Question Query",
+ "description": "The survey question."
+ },
+ "answer": {
+ "type": "string",
+ "title": "Answer",
+ "description": "The answer to this survey question."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "reporting"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_survey_response",
+ "methodNameCamel": "getSurveyResponse"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/verified-domains/{domain_name}": {
+ "get": {
+ "summary": "Get domain info",
+ "description": "Get the details for a single domain on the account.",
+ "operationId": "getVerifiedDomain",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "domain_name",
+ "x-title": "Domain Name",
+ "type": "string",
+ "required": true,
+ "description": "The domain name."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "schema": {
+ "type": "object",
+ "title": "Verified Domains",
+ "description": "The verified domains currently on the account.",
+ "properties": {
+ "domain": {
+ "type": "string",
+ "title": "Domain Name",
+ "description": "The name of this domain.",
+ "readOnly": true
+ },
+ "verified": {
+ "type": "boolean",
+ "title": "Verified",
+ "description": "Whether the domain has been verified for sending.",
+ "readOnly": true
+ },
+ "authenticated": {
+ "type": "boolean",
+ "title": "Authenticated",
+ "description": "Whether domain authentication is enabled for this domain.",
+ "readOnly": true
+ },
+ "verification_email": {
+ "type": "string",
+ "title": "Verification Email",
+ "description": "The e-mail address receiving the two-factor challenge for this domain.",
+ "readOnly": true
+ },
+ "verification_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Verification Challenge Sent",
+ "description": "The date/time that the two-factor challenge was sent to the verification email.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Domain Status",
+ "description": "The Domain's current status.",
+ "readOnly": true,
+ "enum": [
+ "VERIFICATION_IN_PROGRESS",
+ "VERIFIED",
+ "EXPIRED",
+ "ERROR",
+ "AUTHENTICATION_IN_PROGRESS",
+ "AUTHENTICATION_ERROR",
+ "AUTHENTICATED"
+ ]
+ },
+ "is_free_email_provider": {
+ "type": "boolean",
+ "title": "Is Public Domain",
+ "description": "Returns whether the domain used is a public / free email provider. See [Limitations of Free Email Addresses](https://mailchimp.com/help/limitations-of-free-email-addresses/) for more details.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "verifiedDomains"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_domain",
+ "methodNameCamel": "getDomain"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "delete": {
+ "summary": "Delete domain",
+ "description": "Delete a verified domain from the account.",
+ "operationId": "deleteVerifiedDomain",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "domain_name",
+ "x-title": "Domain Name",
+ "type": "string",
+ "required": true,
+ "description": "The domain name."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Empty Response"
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "verifiedDomains"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "delete_domain",
+ "methodNameCamel": "deleteDomain"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ }
+ },
+ "/verified-domains/{domain_name}/actions/verify": {
+ "post": {
+ "summary": "Verify domain",
+ "description": "Verify a domain for sending.",
+ "operationId": "verifyDomain",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "domain_name",
+ "x-title": "Domain Name",
+ "type": "string",
+ "required": true,
+ "description": "The domain name."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The domain being verified for sending.",
+ "schema": {
+ "type": "object",
+ "title": "Verified Domains",
+ "description": "The verified domains currently on the account.",
+ "properties": {
+ "domain": {
+ "type": "string",
+ "title": "Domain Name",
+ "description": "The name of this domain.",
+ "readOnly": true
+ },
+ "verified": {
+ "type": "boolean",
+ "title": "Verified",
+ "description": "Whether the domain has been verified for sending.",
+ "readOnly": true
+ },
+ "authenticated": {
+ "type": "boolean",
+ "title": "Authenticated",
+ "description": "Whether domain authentication is enabled for this domain.",
+ "readOnly": true
+ },
+ "verification_email": {
+ "type": "string",
+ "title": "Verification Email",
+ "description": "The e-mail address receiving the two-factor challenge for this domain.",
+ "readOnly": true
+ },
+ "verification_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Verification Challenge Sent",
+ "description": "The date/time that the two-factor challenge was sent to the verification email.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Domain Status",
+ "description": "The Domain's current status.",
+ "readOnly": true,
+ "enum": [
+ "VERIFICATION_IN_PROGRESS",
+ "VERIFIED",
+ "EXPIRED",
+ "ERROR",
+ "AUTHENTICATION_IN_PROGRESS",
+ "AUTHENTICATION_ERROR",
+ "AUTHENTICATED"
+ ]
+ },
+ "is_free_email_provider": {
+ "type": "boolean",
+ "title": "Is Public Domain",
+ "description": "Returns whether the domain used is a public / free email provider. See [Limitations of Free Email Addresses](https://mailchimp.com/help/limitations-of-free-email-addresses/) for more details.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "verifiedDomains"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "submit_domain_verification",
+ "methodNameCamel": "submitDomainVerification"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Verify a domain for sending.",
+ "description": "Submit a response to the verification challenge and verify a domain for sending.",
+ "required": [
+ "code"
+ ],
+ "properties": {
+ "code": {
+ "type": "string",
+ "title": "Verification Code",
+ "description": "The code that was sent to the email address provided when adding a new domain to verify."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/verified-domains": {
+ "get": {
+ "summary": "List sending domains",
+ "description": "Get all of the sending domains on the account.",
+ "operationId": "getVerifiedDomains",
+ "responses": {
+ "200": {
+ "description": "The domains on the account.",
+ "schema": {
+ "type": "object",
+ "title": "Verified Domains",
+ "description": "The verified domains currently on the account.",
+ "properties": {
+ "domains": {
+ "type": "array",
+ "title": "Domains",
+ "description": "The domains on the account",
+ "readOnly": true,
+ "items": {
+ "type": "object",
+ "title": "Verified Domains",
+ "description": "The verified domains currently on the account.",
+ "properties": {
+ "domain": {
+ "type": "string",
+ "title": "Domain Name",
+ "description": "The name of this domain.",
+ "readOnly": true
+ },
+ "verified": {
+ "type": "boolean",
+ "title": "Verified",
+ "description": "Whether the domain has been verified for sending.",
+ "readOnly": true
+ },
+ "authenticated": {
+ "type": "boolean",
+ "title": "Authenticated",
+ "description": "Whether domain authentication is enabled for this domain.",
+ "readOnly": true
+ },
+ "verification_email": {
+ "type": "string",
+ "title": "Verification Email",
+ "description": "The e-mail address receiving the two-factor challenge for this domain.",
+ "readOnly": true
+ },
+ "verification_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Verification Challenge Sent",
+ "description": "The date/time that the two-factor challenge was sent to the verification email.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Domain Status",
+ "description": "The Domain's current status.",
+ "readOnly": true,
+ "enum": [
+ "VERIFICATION_IN_PROGRESS",
+ "VERIFIED",
+ "EXPIRED",
+ "ERROR",
+ "AUTHENTICATION_IN_PROGRESS",
+ "AUTHENTICATION_ERROR",
+ "AUTHENTICATED"
+ ]
+ },
+ "is_free_email_provider": {
+ "type": "boolean",
+ "title": "Is Public Domain",
+ "description": "Returns whether the domain used is a public / free email provider. See [Limitations of Free Email Addresses](https://mailchimp.com/help/limitations-of-free-email-addresses/) for more details.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "total_items": {
+ "type": "integer",
+ "title": "Item Count",
+ "description": "The total number of items matching the query regardless of pagination.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "verifiedDomains"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "get_verified_domains_all",
+ "methodNameCamel": "getVerifiedDomainsAll"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false
+ },
+ "post": {
+ "summary": "Add domain to account",
+ "description": "Add a domain to the account.",
+ "operationId": "createVerifiedDomain",
+ "parameters": [],
+ "responses": {
+ "200": {
+ "description": "The newly-created domain.",
+ "schema": {
+ "type": "object",
+ "title": "Verified Domains",
+ "description": "The verified domains currently on the account.",
+ "properties": {
+ "domain": {
+ "type": "string",
+ "title": "Domain Name",
+ "description": "The name of this domain.",
+ "readOnly": true
+ },
+ "verified": {
+ "type": "boolean",
+ "title": "Verified",
+ "description": "Whether the domain has been verified for sending.",
+ "readOnly": true
+ },
+ "authenticated": {
+ "type": "boolean",
+ "title": "Authenticated",
+ "description": "Whether domain authentication is enabled for this domain.",
+ "readOnly": true
+ },
+ "verification_email": {
+ "type": "string",
+ "title": "Verification Email",
+ "description": "The e-mail address receiving the two-factor challenge for this domain.",
+ "readOnly": true
+ },
+ "verification_sent": {
+ "type": "string",
+ "format": "date-time",
+ "title": "Verification Challenge Sent",
+ "description": "The date/time that the two-factor challenge was sent to the verification email.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "title": "Domain Status",
+ "description": "The Domain's current status.",
+ "readOnly": true,
+ "enum": [
+ "VERIFICATION_IN_PROGRESS",
+ "VERIFIED",
+ "EXPIRED",
+ "ERROR",
+ "AUTHENTICATION_IN_PROGRESS",
+ "AUTHENTICATION_ERROR",
+ "AUTHENTICATED"
+ ]
+ },
+ "is_free_email_provider": {
+ "type": "boolean",
+ "title": "Is Public Domain",
+ "description": "Returns whether the domain used is a public / free email provider. See [Limitations of Free Email Addresses](https://mailchimp.com/help/limitations-of-free-email-addresses/) for more details.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error generated by the Mailchimp API.",
+ "schema": {
+ "type": "object",
+ "title": "Problem Detail Document",
+ "description": "An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.",
+ "required": [
+ "type",
+ "title",
+ "status",
+ "detail",
+ "instance"
+ ],
+ "properties": {
+ "type": {
+ "type": "string",
+ "title": "Problem Type",
+ "description": "An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.",
+ "example": "https://mailchimp.com/developer/marketing/docs/errors/"
+ },
+ "title": {
+ "type": "string",
+ "title": "Error Title",
+ "description": "A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.",
+ "example": "Resource Not Found"
+ },
+ "status": {
+ "type": "integer",
+ "title": "HTTP Status Code",
+ "description": "The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.",
+ "example": 404
+ },
+ "detail": {
+ "type": "string",
+ "title": "Error Message",
+ "description": "A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).",
+ "example": "The requested resource could not be found."
+ },
+ "instance": {
+ "type": "string",
+ "title": "Instance ID",
+ "description": "A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.",
+ "example": "995c5cb0-3280-4a6e-808b-3b096d0bb219"
+ }
+ }
+ }
+ }
+ },
+ "deprecated": false,
+ "tags": [
+ "verifiedDomains"
+ ],
+ "x-custom-config": {
+ "methodNameSnake": "create_verified_domain",
+ "methodNameCamel": "createVerifiedDomain"
+ },
+ "x-moar-primitive-count": 0,
+ "x-moar-complexity-skipped": false,
+ "requestBody": {
+ "x-moar-converted-from-body-param": true,
+ "description": "",
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "title": "Verified Domains",
+ "description": "The verified domains currently on the account.",
+ "required": [
+ "verification_email"
+ ],
+ "properties": {
+ "verification_email": {
+ "type": "string",
+ "title": "Verification Email",
+ "description": "The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action."
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {},
+ "externalDocs": {
+ "description": "Learn more with the full Mailchimp API documentation.",
+ "url": "https://mailchimp.com/developer/marketing/"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/__init__.py b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/__init__.py
new file mode 100644
index 00000000..5a69ea60
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/__init__.py
@@ -0,0 +1,11331 @@
+"""Arcade Starter Tools for Mailchimp_Marketing
+
+DO NOT EDIT THIS MODULE DIRECTLY.
+
+THIS MODULE WAS AUTO-GENERATED BY TRANSPILING THE API STARTER TOOL JSON DEFINITIONS
+IN THE ../wrapper_tools DIRECTORY INTO PYTHON CODE. ANY CHANGES TO THIS MODULE WILL
+BE OVERWRITTEN BY THE TRANSPILER.
+"""
+import asyncio
+import json
+import jsonschema
+from enum import Enum
+from typing import Annotated, Any
+
+import httpx
+
+from arcade_tdk import tool, ToolContext
+from arcade_tdk.errors import RetryableToolError
+from arcade_tdk.auth import OAuth2
+
+from .request_body_schemas import REQUEST_BODY_SCHEMAS
+from . import utils
+
+# Retry configuration
+INITIAL_RETRY_DELAY = 0.5 # seconds
+
+HTTP_CLIENT = httpx.AsyncClient(
+ timeout=httpx.Timeout(60.0, connect=10.0),
+ limits=httpx.Limits(max_keepalive_connections=20, max_connections=100),
+ transport=httpx.AsyncHTTPTransport(retries=3),
+ http2=True,
+ follow_redirects=True,
+)
+
+class ToolMode(str, Enum):
+ """Mode for tools with complex request bodies."""
+ GET_REQUEST_SCHEMA = "get_request_schema"
+ EXECUTE = "execute"
+
+
+
+def remove_none_values(data: dict[str, Any]) -> dict[str, Any]:
+ return {k: v for k, v in data.items() if v is not None}
+
+
+async def make_request(
+ url: str,
+ method: str,
+ params: dict[str, Any] | None = None,
+ headers: dict[str, Any] | None = None,
+ content: str | None = None,
+ data: dict[str, Any] | None = None,
+ auth: tuple[str, str] | None = None,
+ max_retries: int = 3,
+) -> httpx.Response:
+ """Make an HTTP request with retry logic for 5xx server errors."""
+ for attempt in range(max_retries):
+ try:
+ response = await HTTP_CLIENT.request(
+ url=url,
+ auth=auth,
+ method=method,
+ params=params,
+ headers=headers,
+ content=content,
+ )
+ response.raise_for_status()
+ except httpx.HTTPStatusError as e:
+ # Only retry on 5xx server errors
+ if e.response.status_code >= 500 and attempt < max_retries - 1:
+ # Exponential backoff: 0.5s, 1s, 2s
+ await asyncio.sleep(INITIAL_RETRY_DELAY * (2 ** attempt))
+ continue
+ # Re-raise for 4xx errors or if max retries reached
+ raise
+ except httpx.RequestError as e:
+ # Don't retry request errors (network issues are handled by transport)
+ raise
+ else:
+ return response
+
+ # This should never be reached, but satisfies type checker
+ raise httpx.RequestError("Max retries exceeded") # noqa: TRY003
+
+
+async def make_request_with_schema_validation(
+ url: str,
+ method: str,
+ request_data: dict[str, Any],
+ schema: dict[str, Any] | str,
+ auth: tuple[str, str] | None = None,
+ params: dict[str, Any] | None = None,
+ headers: dict[str, Any] | None = None,
+ max_retries: int = 3,
+) -> httpx.Response:
+ """Make an HTTP request with schema validation on format errors."""
+ # Parse schema if it's a string, skip validation if parsing fails
+ parsed_schema = None
+ if isinstance(schema, str):
+ try:
+ parsed_schema = json.loads(schema)
+ except Exception:
+ # If schema parsing fails, just skip validation
+ parsed_schema = None
+ else:
+ parsed_schema = schema
+
+ try:
+ response = await make_request(
+ url=url,
+ auth=auth,
+ method=method,
+ params=params,
+ headers=headers,
+ content=json.dumps(request_data),
+ max_retries=max_retries,
+ )
+ except httpx.HTTPStatusError as e:
+ # Only provide schema validation for format-related errors
+ if e.response.status_code in (400, 422):
+ api_error_details = (
+ f"API returned {e.response.status_code}: {e.response.text}"
+ )
+
+ # Only run validation if we have a valid parsed schema
+ if parsed_schema is not None:
+ # Run validation to provide additional context
+ is_valid, validation_error = validate_json_against_schema(
+ request_data, parsed_schema
+ )
+
+ if not is_valid:
+ # Schema validation found issues - additional context
+ additional_context = (
+ f"{api_error_details}\n\n"
+ f"Schema validation found the following issues:\n"
+ f"{validation_error}"
+ )
+ else:
+ # Schema validation passed - just show API error
+ additional_context = api_error_details
+ else:
+ # No valid schema - just show API error
+ additional_context = api_error_details
+
+ raise RetryableToolError(
+ message=(
+ f"API request failed with validation error: "
+ f"{e.response.status_code}"
+ ),
+ developer_message=api_error_details,
+ additional_prompt_content=additional_context,
+ ) from e
+ else:
+ # For non-validation errors, re-raise as-is
+ raise
+ else:
+ return response
+
+
+def validate_json_against_schema(
+ json_data: dict[str, Any], schema: dict[str, Any]
+) -> tuple[bool, str | None]:
+ """Validate JSON data against an OpenAPI/JSON Schema.
+
+ This provides full JSON Schema Draft 7 validation including:
+ - Required fields, types, enums
+ - Pattern validation (regex)
+ - Format validation (email, uuid, date-time, etc.)
+ - Min/max length and values
+ - oneOf, anyOf, allOf
+ - And all other JSON Schema features
+
+ Args:
+ json_data: The JSON data to validate
+ schema: The JSON Schema to validate against
+
+ Returns:
+ Tuple of (is_valid, error_messages). If valid, error_messages is None.
+ If invalid, error_messages contains all validation errors.
+ """
+ try:
+ validator = jsonschema.Draft7Validator(
+ schema, format_checker=jsonschema.Draft7Validator.FORMAT_CHECKER
+ )
+ # Collect ALL validation errors
+ errors = list(validator.iter_errors(json_data))
+ if errors:
+ # Format all errors with their paths
+ error_messages = []
+ for error in errors:
+ error_path = (
+ ".".join(str(p) for p in error.path)
+ if error.path
+ else "root"
+ )
+ error_messages.append(f"{error.message} at {error_path}")
+ # Join all errors with newlines
+ return False, "\n".join(error_messages)
+ else:
+ return True, None
+ except jsonschema.SchemaError as e:
+ return False, f"Invalid schema: {e.message}"
+ except Exception as e:
+ return False, f"Validation error: {e!s}"
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_mailchimp_api_resources(
+ context: ToolContext,
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getRoot'."]:
+ """Retrieve all available Mailchimp API resource links.
+
+ This tool fetches links to all the resources available in the Mailchimp Marketing API, providing easy access to various API endpoints.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_chimp_chatter_activity(
+ context: ToolContext,
+ number_of_records_to_return: Annotated[str | None, "Specify the number of Chimp Chatter records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getActivityFeedChimpChatter'."]:
+ """Retrieve the latest Chimp Chatter activity for your account.
+
+ Use this tool to fetch the most recent Chimp Chatter activity feed from your Mailchimp account. This provides updates ordered by the latest first.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/activity-feed/chimp-chatter".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_mailchimp_account_exports(
+ context: ToolContext,
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return in the response. Use dot notation for nested fields."] = None, # noqa: E501
+ number_of_records: Annotated[str | None, "Specify the number of records to return. Defaults to 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0, used to manage data retrieval position."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAccountExports'."]:
+ """Retrieve a list of account exports in Mailchimp.
+
+ Call this tool to get a list of account exports for a Mailchimp account, useful for tracking or managing account data exports.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/account-exports".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": number_of_records, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_account_export(
+ context: ToolContext,
+ include_export_stages: Annotated[list[str], "Array of export stages to include in the account export."], # noqa: E501
+ export_starting_date: Annotated[str | None, "An ISO 8601 date to limit export to records created after this time. Excludes audiences."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAccountExport'."]:
+ """Create a new account export in your Mailchimp account.
+
+ This tool initiates a new export of account data in your Mailchimp account. Use this when you need to generate and download account information from Mailchimp.""" # noqa: E501
+ request_data: Any = {"include_stages": include_export_stages, "since_timestamp": export_starting_date} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/account-exports".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_account_export_info(
+ context: ToolContext,
+ account_export_id: Annotated[str, "The unique ID for the account export. Required to retrieve specific export details."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAccountExportId'."]:
+ """Get information about a specific account export.
+
+ Use this tool to retrieve details about a particular account export using the export ID. Ideal for checking the status or details of exports in Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/account-exports/{export_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), export_id=account_export_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_audience_contacts(
+ context: ToolContext,
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "The number of audience records to return, ranging from 1 to 1000. Default is 10."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAudienceContacts'."]:
+ """Retrieve all audience information from the account.
+
+ Use this tool to get detailed information about every audience in the Mailchimp account, assisting in data management and marketing analysis.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/audiences".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_list, "count": records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_audience_info(
+ context: ToolContext,
+ audience_id: Annotated[str, "The unique ID of the audience to retrieve information for."],
+ exclude_fields_list: Annotated[str | None, "A list of fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAudienceId'."]:
+ """Retrieve information about a specific audience.
+
+ Use this tool to get details about a specific audience in Mailchimp Marketing using the audience ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/audiences/{audience_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), audience_id=audience_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def retrieve_audience_contact_list(
+ context: ToolContext,
+ audience_id: Annotated[str, "The unique identifier for the specific audience to retrieve contacts. Ensure this ID corresponds to an existing audience."], # noqa: E501
+ created_before_datetime: Annotated[str | None, "Restricts the response to contacts created at or before the specified time. Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00."] = None, # noqa: E501
+ created_since: Annotated[str | None, "Restrict contacts to those created after this timestamp (exclusive). Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00."] = None, # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specifies how many records to return, from 10 to 1000."] = None, # noqa: E501
+ pagination_cursor: Annotated[str | None, "Paginate through records using a `next_cursor` from a previous request. By default, fetches the first page."] = None, # noqa: E501
+ restrict_by_update_date_before: Annotated[str | None, "Restricts the response to contacts updated at or before the specified date and time, using ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00."] = None, # noqa: E501
+ updated_since: Annotated[str | None, "Restrict response to contacts updated after this time using ISO 8601 format (exclusive)."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAudienceContactList'."]:
+ """Retrieve contacts for a specific marketing audience.
+
+ Use this tool to obtain a list of omni-channel contacts associated with a particular audience in your marketing campaigns.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/audiences/{audience_id}/contacts".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), audience_id=audience_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "cursor": pagination_cursor, "created_before": created_before_datetime, "created_since": created_since, "updated_before": restrict_by_update_date_before, "updated_since": updated_since}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_audience_contact(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ audience_unique_id: Annotated[str | None, "The unique identifier for the audience in Mailchimp where the contact will be added. This ID is necessary to specify the target audience for the new contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ merge_field_validation_mode: Annotated[str | None, "Choose 'ignore_required_checks' to skip validation on required merge fields, or 'strict' to enforce validation. Defaults to 'strict' if not set. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ data_processing_mode: Annotated[str | None, "Selects the data processing mode: 'historical' mode skips automations and webhooks, 'live' mode triggers them. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'createAudienceContact'."]:
+ """Create a new omni-channel contact for an audience.
+
+ Use this tool to add a new contact to a Mailchimp audience for omni-channel marketing.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path, query parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["CREATEAUDIENCECONTACT"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path, query parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not audience_unique_id:
+ missing_params.append(("audience_unique_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["CREATEAUDIENCECONTACT"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["CREATEAUDIENCECONTACT"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/audiences/{audience_id}/contacts".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), audience_id=audience_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["CREATEAUDIENCECONTACT"],
+ params=remove_none_values({"merge_field_validation_mode": merge_field_validation_mode, "data_mode": data_processing_mode}), # noqa: E501
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def retrieve_audience_contact(
+ context: ToolContext,
+ audience_unique_id: Annotated[str, "The unique ID for the audience to retrieve the contact from."], # noqa: E501
+ unique_contact_identifier: Annotated[str, "A unique identifier for the contact, either a Mailchimp contact ID or a channel hash. Format: email:[md5_hash] for emails or sms:[sha256_hash] for phone numbers."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude, using dot notation for sub-objects, when retrieving contact details."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAudienceContact'."]:
+ """Retrieve a specific omni-channel contact in an audience.
+
+"""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/audiences/{audience_id}/contacts/{contact_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), audience_id=audience_unique_id, contact_id=unique_contact_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_contact_information(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ audience_id: Annotated[str | None, "The unique ID for the audience to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ contact_id: Annotated[str | None, "The unique ID for the contact to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ merge_field_validation_mode: Annotated[str | None, "Specifies how merge field validation is handled. Options: `ignore_required_checks` (no error if fields missing), `strict` (errors if required fields not provided). Default is `strict`. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ data_processing_mode: Annotated[str | None, "Specify `historical` to prevent triggering automations/webhooks, or `live` to trigger them for contact data changes. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchAudienceContact'."]:
+ """Update information for an existing contact.
+
+ Use this tool to update the details of an existing omni-channel contact in a specified audience in Mailchimp. Ideal for modifying contact information such as email, name, or other personal details.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path, query parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATECONTACTINFORMATION"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path, query parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not audience_id:
+ missing_params.append(("audience_id", "path"))
+ if not contact_id:
+ missing_params.append(("contact_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATECONTACTINFORMATION"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATECONTACTINFORMATION"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/audiences/{audience_id}/contacts/{contact_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), audience_id=audience_id, contact_id=contact_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATECONTACTINFORMATION"],
+ params=remove_none_values({"merge_field_validation_mode": merge_field_validation_mode, "data_mode": data_processing_mode}), # noqa: E501
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def archive_contact_mailchimp(
+ context: ToolContext,
+ audience_unique_id: Annotated[str, "The unique ID for the Mailchimp audience where the contact will be archived."], # noqa: E501
+ contact_id: Annotated[str, "The unique identifier for the contact to archive within the audience in Mailchimp."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAudiencesContactsActionsArchive'."]: # noqa: E501
+ """Archives a contact in a Mailchimp audience.
+
+ This tool archives a specific contact within a given audience in Mailchimp. Use this when you need to remove a contact from active participation without deleting them permanently.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/audiences/{audience_id}/contacts/{contact_id}/actions/archive".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), audience_id=audience_unique_id, contact_id=contact_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def forget_contact(
+ context: ToolContext,
+ audience_id: Annotated[str, "The unique ID for the audience where the contact should be forgotten."], # noqa: E501
+ contact_id: Annotated[str, "The unique ID of the contact to be forgotten from the audience."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAudiencesContactsActionsForget'."]: # noqa: E501
+ """Forget a contact in the audience list.
+
+ Use this tool to erase a contact's data from a specified audience in Mailchimp, ensuring the contact is forgotten.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/audiences/{audience_id}/contacts/{contact_id}/actions/forget".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), audience_id=audience_id, contact_id=contact_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_connected_apps(
+ context: ToolContext,
+ exclude_fields_from_response: Annotated[str | None, "A comma-separated list of fields to exclude from the response, referencing sub-objects with dot notation."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return in the response. Use dot notation for sub-object fields."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAuthorizedApps'."]:
+ """Retrieve registered connected applications for an account.
+
+ Use this tool to get a list of applications that are registered and connected to a Mailchimp account.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/authorized-apps".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_from_response, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_authorized_app_info(
+ context: ToolContext,
+ authorized_application_id: Annotated[str, "The unique ID for the connected authorized application to retrieve its information."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude. Use dot notation for sub-object references."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAuthorizedAppsId'."]:
+ """Retrieve details of a specific authorized application.
+
+ This tool retrieves information about a specific authorized application using the app ID. It is useful for checking the details or status of an application authorized within Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/authorized-apps/{app_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), app_id=authorized_application_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_classic_automations_summary(
+ context: ToolContext,
+ automation_status_filter: Annotated[str | None, "Specify the status of automations to filter results (e.g., 'active', 'paused')."] = None, # noqa: E501
+ created_after_time: Annotated[str | None, "Specify the time to filter automations created after this date-time. Use ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00."] = None, # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of automation records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_before_create_time: Annotated[str | None, "Restrict the response to automations created before the specified time in ISO 8601 format. Example: 2015-10-21T15:41:36+00:00."] = None, # noqa: E501
+ restrict_to_automations_started_before: Annotated[str | None, "Restrict the response to automations started before this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ start_time_after: Annotated[str | None, "Restrict the response to automations started after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomations'."]:
+ """Fetch a summary of an account's classic automations.
+
+ Call this tool to obtain a summary of classic automations set up in a Mailchimp account, useful for understanding automation configurations and statuses.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"count": number_of_records_to_return, "offset": pagination_offset, "fields": fields_to_return, "exclude_fields": exclude_fields_list, "before_create_time": restrict_before_create_time, "since_create_time": created_after_time, "before_start_time": restrict_to_automations_started_before, "since_start_time": start_time_after, "status": automation_status_filter}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_automation(
+ context: ToolContext,
+ automation_workflow_type: Annotated[str, "Specify the type of Automation workflow. Currently, only 'abandonedCart' is supported."], # noqa: E501
+ automation_from_name: Annotated[str | None, "The 'from' name to display in the new automation emails. It should be an easily recognizable name for recipients."] = None, # noqa: E501
+ list_id: Annotated[str | None, "The unique identifier for the Mailchimp List to target with the automation."] = None, # noqa: E501
+ reply_to_email_address: Annotated[str | None, "The reply-to email address for the automation in Mailchimp."] = None, # noqa: E501
+ store_id: Annotated[str | None, "The unique identifier for the store in Mailchimp. Required to target specific automation to a store."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAutomations'."]:
+ """Create a new classic automation in Mailchimp.
+
+ This tool initiates the creation of a new classic automation within your Mailchimp account, facilitating automated email campaigns.""" # noqa: E501
+ request_data: Any = {"recipients": {"list_id": list_id, "store_id": store_id}, "settings": {"from_name": automation_from_name, "reply_to": reply_to_email_address}, "trigger_settings": {"workflow_type": automation_workflow_type}} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_automation_summary(
+ context: ToolContext,
+ workflow_id: Annotated[str, "The unique ID for the automation workflow to retrieve its summary."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude from the automation workflow details. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomationsId'."]:
+ """Retrieve details of a specific classic automation workflow.
+
+ This tool fetches a summary of an individual classic automation workflow's settings and content, including trigger settings for the first email.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=workflow_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def pause_automation_emails(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique identifier for the specific automation workflow to be paused."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAutomationsIdActionsPauseAllEmails'."]: # noqa: E501
+ """Pause emails in a specific automation workflow.
+
+ Use this tool to pause all emails in a specified classic automation workflow in Mailchimp. Ideal for temporarily halting scheduled email deliveries.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/actions/pause-all-emails".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def start_mailchimp_automation_emails(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique identifier for the Mailchimp automation workflow to be started."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAutomationsIdActionsStartAllEmails'."]: # noqa: E501
+ """Start all emails in a Mailchimp automation workflow.
+
+ Use this tool to initiate all emails within a specified classic automation workflow in Mailchimp. It should be called when you want to activate a pre-configured sequence of emails in a marketing campaign.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/actions/start-all-emails".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def archive_mailchimp_automation(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique identifier for the Mailchimp automation workflow to archive. This ID is necessary to specify which automation you want to permanently end."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'archiveAutomations'."]:
+ """Permanently archive a Mailchimp automation.
+
+ Use this tool to permanently archive a Mailchimp automation workflow. Once archived, the automation cannot be restarted, but the report data will be kept. You can replicate the archived automation if needed.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/actions/archive".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_automation_emails_summary(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique ID of the automation workflow to retrieve the email summary for."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomationsIdEmails'."]:
+ """Get a summary of emails in an automation workflow.
+
+ Use this tool to retrieve a summary of all emails within a specified classic automation workflow. Call this tool when you need detailed insights into the automation process.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_automation_email_info(
+ context: ToolContext,
+ automation_email_unique_id: Annotated[str, "The unique identifier for the Automation workflow email in Mailchimp."], # noqa: E501
+ automation_workflow_id: Annotated[str, "The unique ID for the automation workflow."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomationsIdEmailsId'."]:
+ """Retrieve details of a specific classic automation email.
+
+ Use this tool to get detailed information about a specific email within a classic automation workflow in Mailchimp Marketing.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=automation_email_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def remove_classic_automation_email(
+ context: ToolContext,
+ automation_workflow_email_id: Annotated[str, "The unique identifier for the specific automation workflow email to be removed."], # noqa: E501
+ automation_workflow_id: Annotated[str, "The unique identifier for the Automation workflow to target for email removal."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteAutomationsIdEmailsId'."]:
+ """Removes a specified classic automation workflow email.
+
+ Use this tool to remove a specific classic automation email from a workflow. Note that emails from certain workflow types, such as Abandoned Cart and Product Retargeting, cannot be deleted.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=automation_workflow_email_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_automation_email_settings(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ automation_workflow_id: Annotated[str | None, "The unique identifier for the Automation workflow to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ automation_workflow_email_id: Annotated[str | None, "The unique ID for the Automation workflow email to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchAutomationEmailWorkflowId'."]:
+ """Update settings for a classic automation workflow email.
+
+ Use this tool to update the settings of a specific email in a classic automation workflow in Mailchimp. Applicable for workflows of type: abandonedBrowse, abandonedCart, emailFollowup, or singleWelcome.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEAUTOMATIONEMAILSETTINGS"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not automation_workflow_id:
+ missing_params.append(("automation_workflow_id", "path"))
+ if not automation_workflow_email_id:
+ missing_params.append(("automation_workflow_email_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEAUTOMATIONEMAILSETTINGS"] + "\n```" # noqa: E501
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEAUTOMATIONEMAILSETTINGS"] + "\n```" # noqa: E501
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=automation_workflow_email_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEAUTOMATIONEMAILSETTINGS"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_automation_email_queue_info(
+ context: ToolContext,
+ automation_workflow_email_id: Annotated[str, "The unique ID for the automation workflow email."], # noqa: E501
+ automation_workflow_id: Annotated[str, "The unique ID for the Automation workflow to obtain the email queue details."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomationsIdEmailsIdQueue'."]:
+ """Retrieve details of a classic automation email queue in Mailchimp.
+
+ This tool retrieves information about a classic automation email queue in Mailchimp. It should be called when you need details about queued emails for a specific automation workflow and email.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}/queue".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=automation_workflow_email_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_subscriber_to_workflow(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique identifier for the Automation workflow to which the subscriber will be added."], # noqa: E501
+ subscriber_email_address: Annotated[str, "The email address of the subscriber to add to the automation workflow."], # noqa: E501
+ workflow_email_id: Annotated[str, "The unique ID for the Automation workflow email. Required to identify the specific email in the workflow."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAutomationsIdEmailsIdQueue'."]:
+ """Add a subscriber to an automation workflow.
+
+ Use this tool to manually add a subscriber to a Mailchimp workflow, bypassing default triggers, or to initiate a series of automated emails.""" # noqa: E501
+ request_data: Any = {"email_address": subscriber_email_address}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}/queue".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=workflow_email_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_automation_subscriber_info(
+ context: ToolContext,
+ automation_workflow_email_id: Annotated[str, "The unique ID for the Automation workflow email in Mailchimp."], # noqa: E501
+ automation_workflow_id: Annotated[str, "The unique ID for the Automation workflow in Mailchimp."], # noqa: E501
+ subscriber_email_md5_hash: Annotated[str, "The MD5 hash of the lowercase version of the subscriber's email address in the list."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomationsIdEmailsIdQueueId'."]:
+ """Get details of a subscriber in an automation email queue.
+
+ This tool retrieves information about a specific subscriber within the queue of a classic automation email in Mailchimp. Use this when you need to access details about how a subscriber is queued in a specific workflow email.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}/queue/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=automation_workflow_email_id, subscriber_hash=subscriber_email_md5_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def pause_automated_email(
+ context: ToolContext,
+ automation_workflow_email_id: Annotated[str, "The unique ID for the automation workflow email to be paused."], # noqa: E501
+ automation_workflow_id: Annotated[str, "The unique ID for the Mailchimp automation workflow to pause."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAutomationsIdEmailsIdActionsPause'."]: # noqa: E501
+ """Pause an automated email in a Mailchimp workflow.
+
+ Use this tool to pause a specific automated email within a Mailchimp automation workflow. This can be useful when you need to temporarily stop sending an ongoing sequence.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}/actions/pause".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=automation_workflow_email_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def start_automated_email(
+ context: ToolContext,
+ automation_email_id: Annotated[str, "The unique ID for the specific email in the automation workflow to be started."], # noqa: E501
+ automation_workflow_id: Annotated[str, "The unique identifier for the Automation workflow in Mailchimp."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAutomationsIdEmailsIdActionsStart'."]: # noqa: E501
+ """Initiate an automated email in Mailchimp.
+
+ Use this tool to begin sending an automated email within a specific Mailchimp workflow. Useful for starting email campaigns based on predefined automation workflows.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/emails/{workflow_email_id}/actions/start".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, workflow_email_id=automation_email_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_removed_automation_subscribers(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique ID for identifying the specific automation workflow in Mailchimp."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomationsIdRemovedSubscribers'."]: # noqa: E501
+ """Get details on subscribers removed from automation workflows.
+
+ Use this tool to obtain information about subscribers who have been removed from a specific classic automation workflow in Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/removed-subscribers".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def remove_subscriber_from_workflow(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique identifier for the Mailchimp automation workflow."], # noqa: E501
+ subscriber_email_address: Annotated[str, "Email address of the list member to be removed from the workflow."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAutomationsIdRemovedSubscribers'."]: # noqa: E501
+ """Remove a subscriber from a Mailchimp automation workflow.
+
+ This tool removes a subscriber from a specified Mailchimp classic automation workflow at any point, ensuring they cannot be re-added to the same workflow.""" # noqa: E501
+ request_data: Any = {"email_address": subscriber_email_address}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/removed-subscribers".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_removed_subscriber_info(
+ context: ToolContext,
+ automation_workflow_id: Annotated[str, "The unique ID for the Mailchimp automation workflow. It is required to identify from which workflow the subscriber was removed."], # noqa: E501
+ subscriber_hash: Annotated[str, "MD5 hash of the lowercase version of the subscriber's email address to identify the removed member."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAutomationsIdRemovedSubscribersId'."]: # noqa: E501
+ """Retrieve details about a removed subscriber from automation.
+
+ Use this tool to get specific information about a subscriber who was removed from a classic Mailchimp automation workflow by providing the workflow ID and subscriber hash.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/automations/{workflow_id}/removed-subscribers/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), workflow_id=automation_workflow_id, subscriber_hash=subscriber_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_batch_summaries(
+ context: ToolContext,
+ exclude_fields_to_return: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of specific fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0, used for navigating through large sets of data."] = None, # noqa: E501
+ record_count_to_return: Annotated[str | None, "Specify the number of records to return, from 1 to 1000. Default is 10."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getBatches'."]:
+ """Retrieve a summary of batch requests from Mailchimp.
+
+ Call this tool to obtain a summary of batch requests that have been executed in Mailchimp. Useful for monitoring and tracking the status and details of past batch operations.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batches".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_to_return, "count": record_count_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def start_batch_processing(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postBatches'."]:
+ """Initiate a batch operations request in Mailchimp.
+
+ Use this tool to initiate processing of batch operations requests in Mailchimp Marketing. This is useful for handling multiple actions at once, such as managing email campaigns or subscriber updates.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["STARTBATCHPROCESSING"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["STARTBATCHPROCESSING"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["STARTBATCHPROCESSING"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/batches".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["STARTBATCHPROCESSING"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_batch_status(
+ context: ToolContext,
+ batch_operation_id: Annotated[str, "The unique ID for the Mailchimp batch operation to check its status."], # noqa: E501
+ excluded_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getBatchesId'."]:
+ """Retrieve the status of a Mailchimp batch request.
+
+ Use this tool to check the current status of a specific batch request in Mailchimp, identified by its batch ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batches/{batch_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), batch_id=batch_operation_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": excluded_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def cancel_batch_request(
+ context: ToolContext,
+ batch_request_id: Annotated[str, "The unique identifier for the batch request you want to cancel."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteBatchesId'."]:
+ """Cancels a running batch request to stop its execution.
+
+ This tool stops a batch request from running in Mailchimp Marketing. It should be called to cancel a long-running batch request. After calling this, results of any completed operations in the batch will not be available.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batches/{batch_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), batch_id=batch_request_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_all_batch_webhooks(
+ context: ToolContext,
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object references."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "Specify the number of webhook records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getBatchWebhooks'."]:
+ """Retrieve all configured webhooks for batches.
+
+ Call this tool to get a list of webhooks that have been set up for handling batch processing events in Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batch-webhooks".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def configure_webhook_on_batch_complete(
+ context: ToolContext,
+ webhook_url: Annotated[str, "The URL where the webhook payload will be sent upon batch completion. It must be a valid and accessible URL."], # noqa: E501
+ webhook_enabled: Annotated[bool | None, "Set to True to enable the webhook to receive requests when batch processing completes."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postBatchWebhooks'."]:
+ """Configure a webhook for batch processing completion alerts.
+
+ This tool allows you to configure a webhook that triggers when any batch request completes processing in Mailchimp. Useful for automating follow-up actions based on batch completion events.""" # noqa: E501
+ request_data: Any = {"url": webhook_url, "enabled": webhook_enabled}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batch-webhooks".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_batch_webhook_info(
+ context: ToolContext,
+ batch_webhook_id: Annotated[str, "The unique ID for the batch webhook to retrieve information from Mailchimp."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude from the batch webhook details. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Specify fields to include in response. Use dot notation for sub-object fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getBatchWebhook'."]:
+ """Retrieve details of a specific batch webhook on Mailchimp.
+
+ Use this tool to get information about a specific batch webhook in a Mailchimp account. It retrieves details such as status and metadata of the specified webhook.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batch-webhooks/{batch_webhook_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), batch_webhook_id=batch_webhook_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_batch_webhook(
+ context: ToolContext,
+ batch_webhook_unique_id: Annotated[str, "The unique identifier for the batch webhook to update."], # noqa: E501
+ enable_webhook: Annotated[bool | None, "Enable or disable webhook requests (true for enable, false for disable)."] = None, # noqa: E501
+ webhook_url: Annotated[str | None, "A valid URL to send webhook notifications when a batch request completes in Mailchimp."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchBatchWebhooks'."]:
+ """Update a batch webhook on Mailchimp.
+
+ Use this tool to update a webhook that triggers when a batch request in Mailchimp completes. This is useful for managing notifications and automated responses to batch operations.""" # noqa: E501
+ request_data: Any = {"url": webhook_url, "enabled": enable_webhook}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batch-webhooks/{batch_webhook_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), batch_webhook_id=batch_webhook_unique_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def remove_batch_webhook(
+ context: ToolContext,
+ batch_webhook_id: Annotated[str, "The unique identifier for the batch webhook to remove. Use this ID to specify which webhook should be deleted, stopping any further webhook notifications to the associated URL."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteBatchWebhookId'."]:
+ """Remove a batch webhook to stop sending webhooks to a URL.
+
+ This tool deletes a batch webhook identified by its ID, ensuring that webhooks are no longer sent to the specified URL. Use this tool when you need to stop receiving batch webhooks from Mailchimp to a particular endpoint.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/batch-webhooks/{batch_webhook_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), batch_webhook_id=batch_webhook_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_mailchimp_template_folders(
+ context: ToolContext,
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of template folder records to return, up to a maximum of 1000. The default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getTemplateFolders'."]:
+ """Retrieve all template folders from Mailchimp.
+
+ Use this tool to retrieve all folders used in Mailchimp to organize templates. It is helpful for managing and categorizing your email templates.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/template-folders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_template_folder(
+ context: ToolContext,
+ folder_name: Annotated[str, "The desired name for the new template folder in Mailchimp."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postTemplateFolders'."]:
+ """Create a new template folder in Mailchimp.
+
+ Use this tool to add a new template folder in Mailchimp. This can help organize your templates into specific categories for better management.""" # noqa: E501
+ request_data: Any = {"name": folder_name}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/template-folders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_template_folder_info(
+ context: ToolContext,
+ template_folder_id: Annotated[str, "The unique ID for the template folder to retrieve information about."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "A comma-separated list of fields to return for the folder. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getTemplateFoldersId'."]:
+ """Retrieve details of a specific template folder.
+
+ Use this tool to get information about a particular folder used for organizing templates in Mailchimp. This is helpful when you need to know more about how your templates are categorized.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/template-folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=template_folder_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_template_folder(
+ context: ToolContext,
+ folder_name: Annotated[str, "The new name for the template folder. Provide a string value."],
+ template_folder_id: Annotated[str, "The unique identifier for the template folder to be updated."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchTemplateFoldersId'."]:
+ """Update a specific folder for organizing templates.
+
+ This tool updates a specific folder used to organize templates in Mailchimp. It should be called when you need to change the details of a template folder, identified by its ID.""" # noqa: E501
+ request_data: Any = {"name": folder_name}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/template-folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=template_folder_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_template_folder(
+ context: ToolContext,
+ template_folder_id: Annotated[str, "The unique ID for the template folder to be deleted. Use this to specify which folder should be removed and have its templates marked as 'unfiled'."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteTemplateFoldersId'."]:
+ """Delete a specific template folder in Mailchimp.
+
+ Use this tool to delete a specific template folder in Mailchimp and mark all its templates as 'unfiled'. Call this tool when you need to reorganize or clean up template folders.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/template-folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=template_folder_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_folders(
+ context: ToolContext,
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of campaign folders to return, between 1 and 1000. Defaults to 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Defaults to 0. Use for fetching subsequent pages."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaignFolders'."]:
+ """Retrieve all folders used to organize campaigns.
+
+ Use this tool to get a list of all folders created for organizing your campaigns in Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaign-folders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_campaign_folder(
+ context: ToolContext,
+ folder_name: Annotated[str, "The name to assign to the new campaign folder. It should be a descriptive string that helps identify the folder's contents."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignFolders'."]:
+ """Create a new campaign folder in Mailchimp.
+
+ This tool is used to create a new campaign folder within Mailchimp marketing. Call this tool when you need to organize campaigns into folders for better management.""" # noqa: E501
+ request_data: Any = {"name": folder_name}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaign-folders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_folder_info(
+ context: ToolContext,
+ campaign_folder_id: Annotated[str, "The unique identifier for the campaign folder. Used to specify which folder's information to retrieve."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Specify a comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaignFoldersId'."]:
+ """Get details about a specific campaign folder.
+
+ Call this tool to retrieve information about a specific campaign folder used for organizing campaigns in Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaign-folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=campaign_folder_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_campaign_folder(
+ context: ToolContext,
+ campaign_folder_id: Annotated[str, "The unique identifier for the campaign folder to be updated."], # noqa: E501
+ folder_name: Annotated[str, "The new name to assign to the campaign folder."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchCampaignFoldersId'."]:
+ """Update a specific folder used to organize campaigns.
+
+ Use this tool to modify the details of an existing campaign folder in Mailchimp. It updates the specified folder to help organize marketing campaigns more efficiently.""" # noqa: E501
+ request_data: Any = {"name": folder_name}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaign-folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=campaign_folder_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_campaign_folder(
+ context: ToolContext,
+ campaign_folder_id: Annotated[str, "The unique ID for the Mailchimp campaign folder to be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteCampaignFoldersId'."]:
+ """Delete a specific campaign folder in Mailchimp.
+
+ Deletes a specified campaign folder in Mailchimp and marks all campaigns in it as 'unfiled'. This tool should be called when you need to remove a campaign folder and manage its contents accordingly.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaign-folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=campaign_folder_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_all_marketing_campaigns(
+ context: ToolContext,
+ campaign_status: Annotated[str | None, "Filter campaigns by their status (e.g., sent, draft)."] = None, # noqa: E501
+ campaign_type: Annotated[str | None, "Specify the type of campaign to retrieve (e.g., regular, plaintext, absplit)."] = None, # noqa: E501
+ campaigns_created_after: Annotated[str | None, "Specify the date and time to restrict results to campaigns created after this point. Must be in ISO 8601 format."] = None, # noqa: E501
+ created_before_date_time: Annotated[str | None, "Restrict response to campaigns created before this time using ISO 8601 format."] = None, # noqa: E501
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ include_resend_shortcut_eligibility: Annotated[str | None, "Include this field in the response to determine if campaigns are eligible for Resend Shortcuts."] = None, # noqa: E501
+ list_member_identifier: Annotated[str | None, "The MD5 hash of the lowercase version of the list member’s email. Used to retrieve campaigns sent to this member."] = None, # noqa: E501
+ list_unique_id: Annotated[str | None, "The unique identifier for the list associated with the campaigns to be retrieved."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Number of records to return, between 10 and 1000. Default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_to_campaigns_sent_after: Annotated[str | None, "Restrict the response to campaigns sent after the specified ISO 8601 time."] = None, # noqa: E501
+ sent_before_time: Annotated[str | None, "Restricts the response to campaigns sent before the specified time. It should be in ISO 8601 format."] = None, # noqa: E501
+ sort_by_field: Annotated[str | None, "Specify the field to sort the campaigns by. Use dot notation for sub-object fields."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Specify the sorting order for the results. Use 'ASC' for ascending or 'DESC' for descending."] = None, # noqa: E501
+ unique_folder_id: Annotated[str | None, "Unique identifier for the folder containing the campaigns."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaigns'."]:
+ """Fetches all marketing campaigns from an account.
+
+ Use this tool to retrieve a list of all marketing campaigns associated with a Mailchimp account.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset, "type": campaign_type, "status": campaign_status, "before_send_time": sent_before_time, "since_send_time": restrict_to_campaigns_sent_after, "before_create_time": created_before_date_time, "since_create_time": campaigns_created_after, "list_id": list_unique_id, "folder_id": unique_folder_id, "member_id": list_member_identifier, "sort_field": sort_by_field, "sort_dir": sort_order_direction, "include_resend_shortcut_eligibility": include_resend_shortcut_eligibility}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_campaign(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaigns'."]:
+ """Create a new Mailchimp campaign quickly.
+
+ This tool is used to initiate a new email campaign via Mailchimp. It should be called when a user wants to create and configure a marketing email or advertisement using Mailchimp's services.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPCAMPAIGN"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPCAMPAIGN"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPCAMPAIGN"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/campaigns".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPCAMPAIGN"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_details(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the campaign to retrieve details about."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Specify a comma-separated list of fields to return, using dot notation for sub-object parameters."] = None, # noqa: E501
+ include_resend_shortcut_eligibility: Annotated[str | None, "Include the `resend_shortcut_eligibility` field in the response to check if the campaign is eligible for Campaign Resend Shortcuts."] = None, # noqa: E501
+ include_resend_shortcut_usage: Annotated[str | None, "Include this to receive the `resend_shortcut_usage` field, providing details about campaigns related by a shortcut."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaignsId'."]:
+ """Retrieve details of a specific marketing campaign.
+
+ Use this tool to get detailed information about a specific campaign using its ID. It provides insights and data related to that campaign.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "include_resend_shortcut_eligibility": include_resend_shortcut_eligibility, "include_resend_shortcut_usage": include_resend_shortcut_usage}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_campaign_settings(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ campaign_unique_id: Annotated[str | None, "The unique identifier for the campaign to be updated in Mailchimp. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchCampaignsId'."]:
+ """Update campaign settings in Mailchimp.
+
+ Use this tool to modify specific settings for a given campaign in Mailchimp. Suitable for updating parts or all of a campaign's configuration.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATECAMPAIGNSETTINGS"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not campaign_unique_id:
+ missing_params.append(("campaign_unique_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATECAMPAIGNSETTINGS"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATECAMPAIGNSETTINGS"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/campaigns/{campaign_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATECAMPAIGNSETTINGS"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_mailchimp_campaign(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique ID for the Mailchimp campaign to delete."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteCampaignsId'."]:
+ """Delete a specific Mailchimp campaign.
+
+ Use this tool to remove a campaign from your Mailchimp account by specifying the campaign ID. Ideal for managing or cleaning up your Mailchimp campaigns when they are no longer needed.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def cancel_campaign_send(
+ context: ToolContext,
+ campaign_identifier: Annotated[str, "The unique identifier for the Mailchimp campaign to be canceled. Used to specify which campaign's delivery is to be stopped."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsCancelSend'."]: # noqa: E501
+ """Cancel a sent campaign before all recipients receive it.
+
+ Use to cancel a Regular or Plain-Text Campaign that has been sent, but not yet delivered to all recipients. Requires Mailchimp Pro.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/cancel-send".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def replicate_campaign_mailchimp(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the Mailchimp campaign to be replicated."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsReplicate'."]:
+ """Replicate a saved or sent Mailchimp campaign.
+
+ This tool replicates a Mailchimp campaign that is in a saved or sent status. Use it to duplicate existing campaigns for reuse or modification.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/replicate".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def send_mailchimp_campaign(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the Mailchimp campaign to be sent. This is a string value required to trigger the campaign."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsSend'."]:
+ """Send a Mailchimp campaign immediately or as scheduled.
+
+ Use this tool to send a Mailchimp campaign. For RSS campaigns, it will follow the predefined schedule, while all other types of campaigns will be sent immediately.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/send".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def schedule_campaign_delivery(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the Mailchimp campaign to be scheduled."], # noqa: E501
+ schedule_delivery_time: Annotated[str, "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Must be on the quarter-hour (:00, :15, :30, :45)."], # noqa: E501
+ batch_delivery_delay: Annotated[int | None, "The delay in minutes between batches for campaign delivery."] = None, # noqa: E501
+ number_of_batches_for_campaign: Annotated[int | None, "The number of batches for the campaign send. Determines how the campaign delivery is split into batches."] = None, # noqa: E501
+ use_timewarp: Annotated[bool | None, "Set to true to use Timewarp for localizing campaign delivery to recipients' time zones. Cannot be true when using Batch Delivery."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsSchedule'."]:
+ """Schedule a Mailchimp campaign for delivery.
+
+ Use this tool to schedule a Mailchimp campaign for delivery. Ideal for standard campaigns; for Multivariate or RSS campaigns, consider using the send action instead.""" # noqa: E501
+ request_data: Any = {"schedule_time": schedule_delivery_time, "timewarp": use_timewarp, "batch_delivery": {"batch_delay": batch_delivery_delay, "batch_count": number_of_batches_for_campaign}} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/schedule".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def unschedule_campaign(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the scheduled campaign to be unscheduled."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsUnschedule'."]: # noqa: E501
+ """Unschedule a scheduled Mailchimp campaign.
+
+ Use this tool to unschedule a Mailchimp campaign that is scheduled but hasn't started sending yet.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/unschedule".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def send_test_email_campaign(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique ID for the specific Mailchimp campaign to send the test email for."], # noqa: E501
+ test_email_addresses: Annotated[list[str], "An array of email addresses to receive the test email."], # noqa: E501
+ test_email_send_type: Annotated[str, "Specify the type of test email to send: 'html' or 'plaintext'."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsTest'."]:
+ """Send a test email for a specific campaign.
+
+ Use this tool to send a test email for a specified Mailchimp marketing campaign. Useful for previewing the campaign before final send.""" # noqa: E501
+ request_data: Any = {"test_emails": test_email_addresses, "send_type": test_email_send_type}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/test".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def pause_rss_campaign(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the RSS-Driven campaign you want to pause. It should be a string."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsPause'."]:
+ """Pause an RSS-Driven campaign.
+
+ Use this tool to pause an ongoing RSS-Driven campaign in Mailchimp Marketing. It should be called when you need to temporarily stop a campaign without deleting it.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/pause".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def resume_rss_driven_campaign(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the RSS-driven campaign to be resumed."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsResume'."]:
+ """Resume an RSS-Driven campaign in Mailchimp.
+
+ This tool resumes an RSS-Driven campaign in Mailchimp, allowing previously paused campaigns to continue sending as planned.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/resume".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def resend_campaign_to_segments(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique ID for identifying the campaign to replicate and resend."], # noqa: E501
+ resend_shortcut_type: Annotated[str | None, "Specify the type of segment to resend the campaign to. Options: 'to_non_openers', 'to_new_subscribers', 'to_non_clickers', 'to_non_purchasers'. Default is 'to_non_openers'."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdActionsCreateResend'."]: # noqa: E501
+ """Resend a campaign to specific segments.
+
+ Use this tool to replicate and resend a Mailchimp campaign to segments like non-openers or new subscribers.""" # noqa: E501
+ request_data: Any = {"shortcut_type": resend_shortcut_type}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/actions/create-resend".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_content(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the Mailchimp campaign to retrieve content for."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude when retrieving campaign content. Use dot notation for sub-object fields."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation to specify sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaignsIdContent'."]:
+ """Retrieve the HTML and plain-text content for a Mailchimp campaign.
+
+ Use this tool to get the content of a specific Mailchimp campaign by providing its campaign ID. The response includes both HTML and plain-text content, useful for viewing or analyzing email campaigns in detail.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/content".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def set_campaign_content(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ campaign_id: Annotated[str | None, "The unique identifier for the Mailchimp campaign to set the content for. This ID is required to specify which campaign you are updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'putCampaignsIdContent'."]:
+ """Set the content for a campaign in Mailchimp.
+
+ Use this tool to update or set the content for a specific campaign in Mailchimp. It is called when you need to change or define what content is included in a campaign.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["SETCAMPAIGNCONTENT"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not campaign_id:
+ missing_params.append(("campaign_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["SETCAMPAIGNCONTENT"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["SETCAMPAIGNCONTENT"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/campaigns/{campaign_id}/content".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="PUT",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["SETCAMPAIGNCONTENT"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_mailchimp_campaign_feedback(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the specific Mailchimp campaign from which to retrieve feedback."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude from the feedback data, using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of specific fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaignsIdFeedback'."]:
+ """Retrieve feedback comments for a Mailchimp campaign.
+
+ Use this tool to get team feedback for a specific Mailchimp campaign by providing the campaign ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/feedback".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_campaign_feedback(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the Mailchimp campaign to which feedback will be added."], # noqa: E501
+ feedback_content: Annotated[str, "The content of the feedback to be added to the campaign."],
+ editable_block_id: Annotated[int | None, "The ID of the editable block the feedback addresses in the campaign."] = None, # noqa: E501
+ is_feedback_complete: Annotated[bool | None, "Indicates whether the feedback is complete. Use 'true' if complete and 'false' otherwise."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCampaignsIdFeedback'."]:
+ """Add feedback to a specific Mailchimp campaign.
+
+ Use this tool to submit feedback for a particular campaign in Mailchimp. This is helpful when users want to provide input or comments about a campaign.""" # noqa: E501
+ request_data: Any = {"block_id": editable_block_id, "message": feedback_content, "is_complete": is_feedback_complete} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/feedback".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_feedback_message(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the campaign to retrieve the specific feedback message."], # noqa: E501
+ feedback_message_id: Annotated[str, "The unique identifier for the feedback message to retrieve from the campaign."], # noqa: E501
+ exclude_fields_from_feedback: Annotated[str | None, "A comma-separated list of fields to exclude from the feedback. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaignsIdFeedbackId'."]:
+ """Retrieve a specific feedback message from a campaign.
+
+ Use this tool to get detailed feedback from a specific campaign by providing the campaign and feedback identifiers.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/feedback/{feedback_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, feedback_id=feedback_message_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_from_feedback}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_campaign_feedback(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the Mailchimp campaign to be updated."],
+ feedback_message_id: Annotated[str, "The unique identifier for the specific feedback message to update in the campaign."], # noqa: E501
+ editable_block_id: Annotated[int | None, "The ID of the editable block that the feedback addresses within the campaign."] = None, # noqa: E501
+ feedback_is_complete: Annotated[bool | None, "Indicates if the feedback is marked as complete. Use true for complete and false for incomplete."] = None, # noqa: E501
+ feedback_message: Annotated[str | None, "The text content of the feedback message to be updated."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchCampaignsIdFeedbackId'."]:
+ """Update specific feedback for a Mailchimp campaign.
+
+ Use this tool to update a particular feedback message for a specific Mailchimp marketing campaign. This is useful when corrections or additional details need to be added to existing feedback.""" # noqa: E501
+ request_data: Any = {"block_id": editable_block_id, "message": feedback_message, "is_complete": feedback_is_complete} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/feedback/{feedback_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id, feedback_id=feedback_message_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def remove_campaign_feedback(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "A unique identifier for the campaign from which you want to remove feedback."], # noqa: E501
+ feedback_message_id: Annotated[str, "The unique identifier for the feedback message to be removed from the campaign."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteCampaignsIdFeedbackId'."]:
+ """Remove a specific feedback message from a campaign.
+
+ Use this tool to delete a feedback message associated with a specific campaign in Mailchimp."""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/feedback/{feedback_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, feedback_id=feedback_message_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def review_campaign_send_checklist(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the campaign in Mailchimp."],
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getCampaignsIdSendChecklist'."]:
+ """Review the send checklist for a Mailchimp campaign.
+
+ This tool is used to review the send checklist for a specific Mailchimp campaign. It helps to identify and resolve any potential issues before sending the campaign.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/campaigns/{campaign_id}/send-checklist".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_connected_sites(
+ context: ToolContext,
+ exclude_fields_list: Annotated[str | None, "A list of fields to exclude, using dot notation for sub-object parameters."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getConnectedSites'."]:
+ """Retrieve all connected sites from a Mailchimp account.
+
+ Use this tool to get a list of all sites connected to a Mailchimp account. Ideal for managing or reviewing the connected site configurations.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/connected-sites".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_connected_site(
+ context: ToolContext,
+ connected_site_domain: Annotated[str, "The domain of the site you want to connect to Mailchimp."], # noqa: E501
+ site_unique_identifier: Annotated[str, "A unique identifier string for the site. This is used to distinguish different connected sites in Mailchimp."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postConnectedSites'."]:
+ """Create a new Mailchimp connected site.
+
+ This tool is used to create a new connected site in Mailchimp. It should be called whenever you need to integrate a new site with Mailchimp's marketing tools.""" # noqa: E501
+ request_data: Any = {"foreign_id": site_unique_identifier, "domain": connected_site_domain}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/connected-sites".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_connected_site_info(
+ context: ToolContext,
+ connected_site_identifier: Annotated[str, "The unique identifier for the connected site to retrieve its information."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Specify a comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getConnectedSitesId'."]:
+ """Retrieve details of a specific connected site.
+
+ Use this tool to get information about a connected site using its ID. It provides various details related to the site.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/connected-sites/{connected_site_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), connected_site_id=connected_site_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def remove_mailchimp_connected_site(
+ context: ToolContext,
+ site_identifier: Annotated[str, "The unique identifier for the connected site you wish to remove from your Mailchimp account."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteConnectedSitesId'."]:
+ """Remove a connected site from your Mailchimp account.
+
+ Use this tool to delete a connected site from your Mailchimp account, removing its integration.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/connected-sites/{connected_site_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), connected_site_id=site_identifier), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def verify_script_installation(
+ context: ToolContext,
+ site_unique_identifier: Annotated[str, "The unique identifier for the Mailchimp connected site to verify script installation."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postConnectedSitesIdActionsVerifyScriptInstallation'."]: # noqa: E501
+ """Verify if the Mailchimp connected site script is installed.
+
+ This tool checks if a Mailchimp connected site's script has been correctly installed using the script URL or fragment. Use it to confirm script deployment.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/connected-sites/{connected_site_id}/actions/verify-script-installation".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), connected_site_id=site_unique_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def trigger_automation_step(
+ context: ToolContext,
+ flow_id: Annotated[str, "The unique identifier for the automation flow to trigger a specific step."], # noqa: E501
+ list_member_email_address: Annotated[str, "The email address of the list member to trigger the automation step for."], # noqa: E501
+ step_identifier: Annotated[str, "The unique identifier for the step in the Mailchimp automation flow."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postCustomerJourneysJourneysIdStepsIdActionsTrigger'."]: # noqa: E501
+ """Trigger a step in a Mailchimp automation flow.
+
+ Use this tool to activate a specific step in an existing Mailchimp automation flow. It requires the journey and step IDs, which are provided during the creation process in the Customer Journey API.""" # noqa: E501
+ request_data: Any = {"email_address": list_member_email_address}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/customer-journeys/journeys/{journey_id}/steps/{step_id}/actions/trigger".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), journey_id=flow_id, step_id=step_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_file_manager_files(
+ context: ToolContext,
+ created_after_date: Annotated[str | None, "Files created after this date will be included in the response. Use ISO 8601 format: 2015-10-21T15:41:36+00:00."] = None, # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated fields to omit from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ file_created_by_user: Annotated[str | None, "The Mailchimp account user who created the File Manager file."] = None, # noqa: E501
+ file_sort_field: Annotated[str | None, "Specify the field to sort the files by, such as 'name', 'date', etc."] = None, # noqa: E501
+ file_type: Annotated[str | None, "The file type to filter File Manager files. Expected as a string value."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specifies the number of records to return. Default is 10; maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_files_before_date: Annotated[str | None, "Restrict the response to files created before the specified ISO 8601 date."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Sets the order direction for sorting results. Use 'ASC' for ascending and 'DESC' for descending."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getFileManagerFiles'."]:
+ """Retrieve images and files from the Mailchimp File Manager.
+
+ Use this tool to get a list of all images and files stored in the File Manager of the Mailchimp account. It provides access to media assets used in marketing campaigns.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/files".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset, "type": file_type, "created_by": file_created_by_user, "before_created_at": restrict_files_before_date, "since_created_at": created_after_date, "sort_field": file_sort_field, "sort_dir": sort_order_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def upload_file_to_file_manager(
+ context: ToolContext,
+ file_content_base64: Annotated[str, "The base64-encoded contents of the file to be uploaded."],
+ file_name: Annotated[str, "The name to be assigned to the uploaded file."],
+ folder_id: Annotated[int | None, "The ID of the folder where the file will be uploaded. This should be an integer."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postFileManagerFiles'."]:
+ """Upload a new file or image to the File Manager.
+
+ Use this tool to upload files or images to the File Manager, enhancing content management."""
+ request_data: Any = {"folder_id": folder_id, "name": file_name, "file_data": file_content_base64} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/files".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_file_manager_file_info(
+ context: ToolContext,
+ file_manager_file_id: Annotated[str, "The unique ID for the File Manager file to retrieve its information."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation to specify sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getFileManagerFilesId'."]:
+ """Retrieve information about a specific file from Mailchimp's File Manager.
+
+ Use this tool to get detailed information about a specific file stored in Mailchimp's File Manager using the file ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/files/{file_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), file_id=file_manager_file_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": exclude_fields_list}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_file_manager_file(
+ context: ToolContext,
+ file_manager_file_id: Annotated[str, "The unique identifier for the File Manager file to be updated."], # noqa: E501
+ file_name: Annotated[str | None, "Specify the new name for the file in the File Manager."] = None, # noqa: E501
+ folder_id: Annotated[int | None, "The ID of the folder. Set to `0` to remove a file from its current folder."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchFileManagerFilesId'."]:
+ """Update a file in the Mailchimp File Manager.
+
+ Use this tool to update an existing file in Mailchimp's File Manager by providing the file ID. It is useful for changing file details or replacing content.""" # noqa: E501
+ request_data: Any = {"folder_id": folder_id, "name": file_name}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/files/{file_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), file_id=file_manager_file_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_file_manager_file(
+ context: ToolContext,
+ file_manager_file_id: Annotated[str, "The unique identifier for the file to be deleted from Mailchimp's File Manager."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteFileManagerFilesId'."]:
+ """Remove a specific file from Mailchimp's File Manager.
+
+ Use this tool to delete a specific file by its ID from Mailchimp's File Manager. It helps manage and organize files by removing unwanted or outdated ones.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/files/{file_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), file_id=file_manager_file_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def list_file_manager_folders(
+ context: ToolContext,
+ created_after_date: Annotated[str | None, "Restrict the response to files created after the specified date in ISO 8601 format."] = None, # noqa: E501
+ created_by_user: Annotated[str | None, "The Mailchimp account user who created the File Manager file."] = None, # noqa: E501
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of folder records to return, from 1 to 1000. Default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_to_files_created_before: Annotated[str | None, "Restrict the response to files created before the specified date using ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getFileManagerFolders'."]:
+ """Retrieve a list of folders from the File Manager.
+
+ This tool is used to obtain a list of all folders available in the File Manager, which is helpful for organizing and accessing files efficiently.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/folders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset, "created_by": created_by_user, "before_created_at": restrict_to_files_created_before, "since_created_at": created_after_date}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_new_file_manager_folder(
+ context: ToolContext,
+ folder_name: Annotated[str, "The desired name for the new folder in File Manager."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postFileManagerFolders'."]:
+ """Create a new folder in Mailchimp's File Manager.
+
+ Use this tool to create a new folder in Mailchimp's File Manager. This can be helpful for organizing files within your Mailchimp account.""" # noqa: E501
+ request_data: Any = {"name": folder_name}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/folders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_file_manager_folder_info(
+ context: ToolContext,
+ file_manager_folder_id: Annotated[str, "The unique identifier for the File Manager folder to retrieve."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of specific fields to return, use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getFileManagerFoldersId'."]:
+ """Retrieve details of a specific folder from File Manager.
+
+ Use this tool to get information about a particular folder in Mailchimp's File Manager. It's useful for accessing folder-specific details, such as name and metadata.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=file_manager_folder_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_file_manager_folder(
+ context: ToolContext,
+ file_manager_folder_id: Annotated[str, "The unique identifier for the File Manager folder to update."], # noqa: E501
+ folder_name: Annotated[str, "The new name for the File Manager folder. It should be a string value."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchFileManagerFoldersId'."]:
+ """Update a specific File Manager folder in Mailchimp.
+
+ Use this tool to update the details of a specific folder in Mailchimp's File Manager. Useful for organizing files within the platform.""" # noqa: E501
+ request_data: Any = {"name": folder_name}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=file_manager_folder_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_file_manager_folder(
+ context: ToolContext,
+ file_manager_folder_id: Annotated[str, "The unique identifier for the folder to be deleted in the File Manager."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteFileManagerFoldersId'."]:
+ """Delete a specific folder in the File Manager.
+
+ Use this tool to delete a folder from Mailchimp's File Manager by specifying the folder ID."""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/folders/{folder_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=file_manager_folder_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_folder_files(
+ context: ToolContext,
+ file_manager_folder_id: Annotated[str, "The unique identifier for the specific File Manager folder to retrieve files from."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object fields."] = None, # noqa: E501
+ file_creator_user: Annotated[str | None, "Mailchimp account user who created the File Manager file. Filter results by this user's contributions."] = None, # noqa: E501
+ file_type: Annotated[str | None, "Specifies the file type to filter files in the folder. Use to retrieve specific types like 'image', 'document', etc."] = None, # noqa: E501
+ filter_files_created_after: Annotated[str | None, "Restrict the response to files created after the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ number_of_records: Annotated[str | None, "Specifies the number of files to retrieve, with a default of 10 and a maximum of 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0. Use this to access pages beyond the first one."] = None, # noqa: E501
+ restrict_files_before_date: Annotated[str | None, "Restrict response to files created before this date using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ sort_by_field: Annotated[str | None, "Specify the field to sort the files by, such as name or size."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Specify the order direction for sorting results. Typically 'asc' for ascending or 'desc' for descending order."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getFileManagerFoldersFiles'."]:
+ """Retrieve files and images from a specific folder.
+
+ Use this tool to get a list of available images and files stored in a specified folder within Mailchimp's file manager. Ideal for accessing and managing digital assets.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/file-manager/folders/{folder_id}/files".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), folder_id=file_manager_folder_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": number_of_records, "offset": pagination_offset, "type": file_type, "created_by": file_creator_user, "before_created_at": restrict_files_before_date, "since_created_at": filter_files_created_after, "sort_field": sort_by_field, "sort_dir": sort_order_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def retrieve_mailchimp_lists(
+ context: ToolContext,
+ created_after_date: Annotated[str | None, "Restrict results to lists created after this date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ created_before_date: Annotated[str | None, "Restrict response to lists created before the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ filter_by_subscriber_email: Annotated[str | None, "Restrict results to lists that include a specific subscriber's email address."] = None, # noqa: E501
+ include_total_contacts: Annotated[str | None, "Set to true to return the total_contacts field, which includes an approximate count of all contacts in any state."] = None, # noqa: E501
+ lists_after_last_campaign_date: Annotated[str | None, "Restrict results to lists created after the last campaign send date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "The number of list records to return. Accepts values between 1 and 1000, with a default of 10."] = None, # noqa: E501
+ restrict_to_ecommerce_store_lists: Annotated[str | None, "Restrict results to lists containing an active, connected, undeleted ecommerce store. Expected values are 'true' or 'false'."] = None, # noqa: E501
+ restrict_to_lists_before_last_campaign_sent: Annotated[str | None, "Restrict results to lists created before the last campaign send date (ISO 8601 format)."] = None, # noqa: E501
+ sort_direction: Annotated[str | None, "Determines the order direction for the sorted results. Accepts 'asc' for ascending and 'desc' for descending."] = None, # noqa: E501
+ sort_lists_by_field: Annotated[str | None, "Field by which to sort the list results. Choose from available list fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getLists'."]:
+ """Retrieve information about all Mailchimp lists.
+
+ Call this tool to obtain details about all the lists associated with a Mailchimp account."""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": records_to_return, "offset": pagination_offset, "before_date_created": created_before_date, "since_date_created": created_after_date, "before_campaign_last_sent": restrict_to_lists_before_last_campaign_sent, "since_campaign_last_sent": lists_after_last_campaign_date, "email": filter_by_subscriber_email, "sort_field": sort_lists_by_field, "sort_dir": sort_direction, "has_ecommerce_store": restrict_to_ecommerce_store_lists, "include_total_contacts": include_total_contacts}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_list(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postLists'."]:
+ """Create a new list in your Mailchimp account.
+
+
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPLIST"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPLIST"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPLIST"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPLIST"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_mailchimp_list_info(
+ context: ToolContext,
+ mailchimp_list_id: Annotated[str, "The unique ID for the Mailchimp list to retrieve information about."], # noqa: E501
+ exclude_fields_in_mailchimp: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-objects, e.g., 'stats.member_count'."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ include_total_contacts: Annotated[str | None, "Set to true to include the approximate count of all contacts in any state (total_contacts) in the response."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsId'."]:
+ """Retrieve details of a specific list in Mailchimp.
+
+ Use this tool to get detailed information about a specific list in your Mailchimp account, including members who are unconfirmed, unsubscribed, or cleaned.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=mailchimp_list_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_in_mailchimp, "include_total_contacts": include_total_contacts}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_mailchimp_list_settings(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ mailchimp_list_id: Annotated[str | None, "The unique ID of the Mailchimp list to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsId'."]:
+ """Update settings for a specific Mailchimp list.
+
+ Use this tool to modify the settings of a specific list in Mailchimp. It should be called when you need to update a list's configuration or preferences.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEMAILCHIMPLISTSETTINGS"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not mailchimp_list_id:
+ missing_params.append(("mailchimp_list_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEMAILCHIMPLISTSETTINGS"] + "\n```" # noqa: E501
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEMAILCHIMPLISTSETTINGS"] + "\n```" # noqa: E501
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=mailchimp_list_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEMAILCHIMPLISTSETTINGS"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_mailchimp_list(
+ context: ToolContext,
+ list_id: Annotated[str, "The unique ID for the Mailchimp list to be deleted."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsId'."]:
+ """Delete a list from your Mailchimp account.
+
+ Use this tool to permanently delete a list from your Mailchimp account. Deleting a list removes its history, including subscriber activity and email addresses, unless previously exported and backed up.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def manage_mailchimp_list_members(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_id: Annotated[str | None, "The unique ID for the specific Mailchimp list to manage. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ allow_incomplete_merge_fields: Annotated[str | None, "Allows member data without required merge fields if set to true. Defaults to false. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ ignore_duplicate_members: Annotated[str | None, "Set to true to ignore duplicate entries in the batch request, saving the first occurrence. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsId'."]:
+ """Batch subscribe or unsubscribe members in a Mailchimp list.
+
+ Use this tool to add or remove multiple members from a specific Mailchimp list. Ideal for managing subscriber lists efficiently.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path, query parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["MANAGEMAILCHIMPLISTMEMBERS"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path, query parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_id:
+ missing_params.append(("list_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["MANAGEMAILCHIMPLISTMEMBERS"] + "\n```" # noqa: E501
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["MANAGEMAILCHIMPLISTMEMBERS"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["MANAGEMAILCHIMPLISTMEMBERS"],
+ params=remove_none_values({"skip_merge_validation": allow_incomplete_merge_fields, "skip_duplicate_check": ignore_duplicate_members}), # noqa: E501
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_abuse_reports_for_list(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the mailing list to retrieve abuse reports for."], # noqa: E501
+ exclude_fields_from_result: Annotated[str | None, "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of records to return. Default is 10. Maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "Comma-separated list of fields to include in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdAbuseReports'."]:
+ """Retrieve all abuse reports for a specified mailing list.
+
+ Call this tool to get detailed information about abuse reports associated with a particular mailing list. This can be useful for monitoring and handling abuse feedback effectively.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/abuse-reports".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": exclude_fields_from_result, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def fetch_abuse_report_details(
+ context: ToolContext,
+ abuse_report_id: Annotated[str, "The unique identifier for the specific abuse report to fetch details for."], # noqa: E501
+ mailing_list_unique_id: Annotated[str, "The unique ID for the mailing list associated with the abuse report."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "Specify the number of records to return, between 1 and 1000. Default is 10."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdAbuseReportsId'."]:
+ """Fetch details about a specific abuse report for a mailing list.
+
+ This tool retrieves detailed information about an abuse report identified by a specific report ID associated with a mailing list via Mailchimp's marketing API. It should be called when specific details about an abuse report are needed.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/abuse-reports/{report_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=mailing_list_unique_id, report_id=abuse_report_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_daily_list_activity(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list to retrieve activity stats."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdActivity'."]:
+ """Fetch daily detailed activity stats for a list in Mailchimp.
+
+ Retrieve up to the previous 180 days of aggregated daily activity statistics for a specific list, excluding Automation activity.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/activity".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"count": number_of_records_to_return, "offset": pagination_offset, "fields": include_fields, "exclude_fields": exclude_fields}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_top_email_clients(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the email list to retrieve client data from."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdClients'."]:
+ """Retrieve the top email clients from a specific list.
+
+ This tool retrieves a list of the top email clients based on user-agent strings for a specified list ID. It should be called when there's a need to analyze or report on the most popular email clients among subscribers of a particular list.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/clients".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_monthly_list_growth_summary(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the specific list in Mailchimp. Required for retrieving growth activity."], # noqa: E501
+ exclude_fields_to_return: Annotated[str | None, "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "Specify the number of records to return, with a default of 10 and a maximum of 1000."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Determines the sorting order for the results, either ascending or descending."] = None, # noqa: E501
+ sort_results_by_field: Annotated[str | None, "Specify the field by which results should be sorted. Use dot notation for sub-object fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdGrowthHistory'."]:
+ """Retrieve monthly summary of a list's growth activity.
+
+ Use this tool to get a detailed month-by-month summary of the growth activity for a specific list in Mailchimp. It provides insights into subscriber count changes over time.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/growth-history".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": exclude_fields_to_return, "count": records_to_return, "offset": pagination_offset, "sort_field": sort_results_by_field, "sort_dir": sort_order_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_growth_summary(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the specific list in Mailchimp."],
+ specific_month_of_growth_history: Annotated[str, "Specify the month and year (in 'YYYY-MM' format) for retrieving the list's growth history."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdGrowthHistoryId'."]:
+ """Get a list's growth activity summary for a specific month and year.
+
+ Use this tool to obtain a summary of the growth activity for a specific list in a given month and year on Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/growth-history/{month}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, month=specific_month_of_growth_history), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_interest_categories(
+ context: ToolContext,
+ list_id: Annotated[str, "The unique identifier for the mailing list you want to retrieve interest categories for."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects. Helps reduce the size of the response by omitting unnecessary data."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+ interest_group_type: Annotated[str | None, "Specify the type of interest group to restrict results. Example: 'checkboxes', 'radio_buttons'."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0. Use to manage pagination flow."] = None, # noqa: E501
+ record_count: Annotated[str | None, "The number of records to return. Specify a value from 10 to 1000. Defaults to 10 if not provided."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdInterestCategories'."]:
+ """Retrieve interest categories for a specific mailing list.
+
+ Use this tool to obtain detailed information about the interest categories associated with a specific mailing list in Mailchimp Marketing.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_list, "count": record_count, "offset": pagination_offset, "type": interest_group_type}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_interest_category(
+ context: ToolContext,
+ category_description: Annotated[str, "Text description of the interest category. Appears on signup forms, often phrased as a question."], # noqa: E501
+ category_display_type: Annotated[str, "Determines how the interest category appears on signup forms. Options include: 'checkboxes', 'dropdown', 'radio', or 'hidden'."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique ID identifying the Mailchimp list where the interest category will be created."], # noqa: E501
+ category_display_order: Annotated[int | None, "The numerical order for displaying categories. Lower numbers appear first."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdInterestCategories'."]:
+ """Create a new interest category in a Mailchimp list.
+
+ This tool is used to create a new interest category for a specified Mailchimp list. It is useful when you want to categorize subscriber interests within a list.""" # noqa: E501
+ request_data: Any = {"title": category_description, "display_order": category_display_order, "type": category_display_type} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_interest_category_info(
+ context: ToolContext,
+ interest_category_unique_id: Annotated[str, "The unique ID for the interest category you want to retrieve information about."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list you want to retrieve interest category details from."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdInterestCategoriesId'."]:
+ """Fetch specific interest category details from a Mailchimp list.
+
+ Use this tool to get detailed information about a specific interest category within a Mailchimp list. This is useful for understanding subscriber interests and organizing lists more effectively.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, interest_category_id=interest_category_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_interest_category(
+ context: ToolContext,
+ category_display_type: Annotated[str, "Specifies how the category's interests are shown on signup forms. Options: 'checkboxes', 'dropdown', 'radio', 'hidden'."], # noqa: E501
+ interest_category_id: Annotated[str, "The unique ID for the interest category to be updated."],
+ interest_category_title: Annotated[str, "The text description of this interest category for signup forms, often phrased as a question."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list to be updated."],
+ category_display_order: Annotated[int | None, "The numerical order for displaying the category. Lower numbers appear first."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsIdInterestCategoriesId'."]: # noqa: E501
+ """Update a specific interest category in Mailchimp.
+
+ Use this tool to update the details of a specific interest category within a Mailchimp list. Ideal for modifying category information to better organize your audience.""" # noqa: E501
+ request_data: Any = {"title": interest_category_title, "display_order": category_display_order, "type": category_display_type} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, interest_category_id=interest_category_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_interest_category(
+ context: ToolContext,
+ interest_category_id: Annotated[str, "The unique ID of the interest category to be deleted from a list."], # noqa: E501
+ list_id: Annotated[str, "The unique ID for the Mailchimp list from which you want to delete an interest category."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdInterestCategoriesId'."]: # noqa: E501
+ """Delete a specific interest category from a list.
+
+ Use this tool to delete a particular interest category from a specified list in Mailchimp. This might be called when managing email list segments and you need to remove an unwanted audience category.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id, interest_category_id=interest_category_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_interest_category_interests(
+ context: ToolContext,
+ interest_category_unique_id: Annotated[str, "The unique identifier for a specific interest category in a Mailchimp list."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list."],
+ excluded_fields: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation as needed."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return, between 10 and 1000. Default is 10."] = None, # noqa: E501
+ pagination_skip_count: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdInterestCategoriesIdInterests'."]: # noqa: E501
+ """Retrieve interests for a specific category in Mailchimp.
+
+ Use this tool to get a list of interests within a specific category of a Mailchimp list. It helps in understanding what options are available under a given interest category for targeted marketing strategies.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}/interests".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, interest_category_id=interest_category_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": excluded_fields, "count": number_of_records_to_return, "offset": pagination_skip_count}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_interest_group(
+ context: ToolContext,
+ interest_category_unique_id: Annotated[str, "The unique ID for the interest category to which the new group belongs."], # noqa: E501
+ interest_group_name: Annotated[str, "The name of the interest group, shown publicly on subscription forms."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list to which the interest group will be added."], # noqa: E501
+ interest_display_order: Annotated[int | None, "The order in which this interest is displayed relative to others. Use an integer value."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdInterestCategoriesIdInterests'."]: # noqa: E501
+ """Create a new interest group for a specific category.
+
+ This tool is used to create a new interest or 'group name' within a specific interest category for a Mailchimp list. Use it when you need to organize and segment your list subscribers into specific interest groups.""" # noqa: E501
+ request_data: Any = {"name": interest_group_name, "display_order": interest_display_order}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}/interests".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, interest_category_id=interest_category_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_interest_group_names(
+ context: ToolContext,
+ interest_category_id: Annotated[str, "The unique identifier for the interest category in a Mailchimp list."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list to retrieve interest group names from."], # noqa: E501
+ specific_interest_group_name: Annotated[str, "The specific interest or group name to retrieve in the category."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdInterestCategoriesIdInterestsId'."]: # noqa: E501
+ """Retrieve interest group names for a specific category.
+
+ Use this tool to fetch interests or 'group names' associated with a specific category in a Mailchimp list. It is useful for managing or displaying group names to users.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, interest_category_id=interest_category_id, interest_id=specific_interest_group_name), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_interest_group_name(
+ context: ToolContext,
+ interest_category_id: Annotated[str, "The unique ID for the interest category to be updated."],
+ interest_group_name: Annotated[str, "The new name for the interest group, displayed publicly on subscription forms."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique ID for the list to be updated."],
+ specific_interest_id: Annotated[str, "The unique ID for the specific interest group name within the category."], # noqa: E501
+ interest_display_order: Annotated[int | None, "The numerical order in which the interest should appear in a list."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsIdInterestCategoriesIdInterestsId'."]: # noqa: E501
+ """Update group names in a specific interest category.
+
+ Use this tool to update the names of interest groups within a specified category on a Mailchimp list. This is helpful for managing and organizing subscriber interests.""" # noqa: E501
+ request_data: Any = {"name": interest_group_name, "display_order": interest_display_order}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, interest_category_id=interest_category_id, interest_id=specific_interest_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_interest_from_category(
+ context: ToolContext,
+ interest_category_id: Annotated[str, "The unique ID for the interest category to delete the interest from. This ID is essential to specify the correct category in Mailchimp."], # noqa: E501
+ interest_identifier: Annotated[str, "The unique identifier for the specific interest or group name to be deleted."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique ID for the list to be targeted for deleting an interest."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdInterestCategoriesIdInterestsId'."]: # noqa: E501
+ """Delete an interest from a specific category.
+
+ Use this tool to delete interests or group names within a specified category in Mailchimp. This is useful for managing interests in a mailing list.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, interest_category_id=interest_category_id, interest_id=interest_identifier), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_segments_info(
+ context: ToolContext,
+ list_identifier: Annotated[str, "The unique identifier for the mailing list whose segments are to be retrieved."], # noqa: E501
+ created_after_datetime: Annotated[str | None, "Restrict results to segments created after the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ include_cleaned_members: Annotated[str | None, "Set to 'true' to include cleaned (bounced) members in the response. Use this to see members who have been removed due to email issues."] = None, # noqa: E501
+ include_transactional_members: Annotated[str | None, "Specify whether to include transactional members in the response. Use 'true' or 'false'."] = None, # noqa: E501
+ include_unsubscribed_members: Annotated[str | None, "Set to 'true' to include unsubscribed members in the response."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_count: Annotated[str | None, "The number of records to return. Default: 10. Max: 1000."] = None, # noqa: E501
+ restrict_since_updated_time: Annotated[str | None, "Restrict results to segments updated after this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ restrict_to_segments_created_before: Annotated[str | None, "Restrict results to segments created before the specified time. Use ISO 8601 format: 2015-10-21T15:41:36+00:00."] = None, # noqa: E501
+ restrict_to_segments_updated_before: Annotated[str | None, "Restrict results to segments updated before the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ segment_type: Annotated[str | None, "Specify the type of segment to filter results. Use known segment types as strings."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'previewASegment'."]:
+ """Retrieve details of all segments for a specific list.
+
+ Use this tool to get information about all available segments for a specific list in Mailchimp. It helps in understanding the segmentation structure of a mailing list.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": records_count, "offset": pagination_offset, "type": segment_type, "since_created_at": created_after_datetime, "before_created_at": restrict_to_segments_created_before, "include_cleaned": include_cleaned_members, "include_transactional": include_transactional_members, "include_unsubscribed": include_unsubscribed_members, "since_updated_at": restrict_since_updated_time, "before_updated_at": restrict_to_segments_updated_before}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_segment(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list where the new segment will be created."], # noqa: E501
+ segment_name: Annotated[str, "The name of the segment to be created in Mailchimp."],
+ emails_for_static_segment: Annotated[list[str] | None, "An array of emails for creating a static segment. An empty array means no subscribers. Cannot be used with 'options'."] = None, # noqa: E501
+ segment_match_conditions: Annotated[list[dict[str, str]] | None, "Array of conditions to define how the segment matches subscribers. Refer to the Mailchimp documentation for various condition types."] = None, # noqa: E501
+ segment_match_type: Annotated[str | None, "Specifies the match type for the segment conditions. Use 'any' to match any condition and 'all' to match all conditions."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdSegments'."]:
+ """Create a new segment in a specific Mailchimp list.
+
+ This tool is used to create a new segment within a specified Mailchimp list. It should be called when you need to categorize or target specific subsets of your mailing list for marketing purposes.""" # noqa: E501
+ request_data: Any = {"name": segment_name, "static_segment": emails_for_static_segment, "options": {"match": segment_match_type, "conditions": segment_match_conditions}} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_segment_info(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list to fetch segment information from."], # noqa: E501
+ segment_id: Annotated[str, "Provide the unique ID for the segment you want information on."],
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ include_cleaned_members: Annotated[str | None, "Set to 'true' to include cleaned members in the response. Cleaned members are those deleted due to bounce or other delivery issues."] = None, # noqa: E501
+ include_transactional_members: Annotated[str | None, "Set to 'true' to include transactional members in the response."] = None, # noqa: E501
+ include_unsubscribed_members: Annotated[str | None, "Set to 'true' to include unsubscribed members in the response."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdSegmentsId'."]:
+ """Retrieve information about a specific Mailchimp segment.
+
+ Use this tool to get detailed information about a specific segment in a Mailchimp list by providing the list and segment IDs.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments/{segment_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, segment_id=segment_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "include_cleaned": include_cleaned_members, "include_transactional": include_transactional_members, "include_unsubscribed": include_unsubscribed_members}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_specific_segment(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list to target for segment deletion."], # noqa: E501
+ segment_unique_id: Annotated[str, "The unique identifier for the segment to be deleted. It must match the segment ID in Mailchimp."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdSegmentsId'."]:
+ """Delete a specific segment from a Mailchimp list.
+
+ Use this tool to delete a specific segment within a Mailchimp list by providing the list and segment IDs. This is useful for managing and organizing your email marketing lists.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments/{segment_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, segment_id=segment_unique_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_mailchimp_segment(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the list to update the segment in. This ID is required to identify the list containing the target segment."], # noqa: E501
+ segment_name: Annotated[str, "The new name for the segment to be updated."],
+ segment_unique_id: Annotated[str, "The unique ID for the segment to update."],
+ segment_conditions: Annotated[list[dict[str, str]] | None, "An array of conditions that define the segment criteria. Each condition should be a JSON object specifying the targeting parameters."] = None, # noqa: E501
+ segment_match_type: Annotated[str | None, "Determines if any or all conditions must be met for the segment. Allowed values: 'any', 'all'."] = None, # noqa: E501
+ static_email_list: Annotated[list[str] | None, "An array of emails for the static segment. Emails not on the list are ignored. An empty array resets the segment, removing all members. Cannot be used with 'options'."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsIdSegmentsId'."]:
+ """Update the details of a specific segment in a Mailchimp list.
+
+ This tool updates a specific segment within a designated list in Mailchimp. It should be called when there is a need to modify segment criteria or details in an existing list.""" # noqa: E501
+ request_data: Any = {"name": segment_name, "static_segment": static_email_list, "options": {"match": segment_match_type, "conditions": segment_conditions}} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments/{segment_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, segment_id=segment_unique_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_list_segment(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list."],
+ segment_unique_id: Annotated[str, "The unique ID of the segment in the Mailchimp list for member updates."], # noqa: E501
+ emails_to_add_to_segment: Annotated[list[str] | None, "An array of email addresses to add to the specified static segment. Only existing list emails will be added. Limit of 500."] = None, # noqa: E501
+ emails_to_remove_from_segment: Annotated[list[str] | None, "An array of up to 500 emails to remove from the static segment. Emails not in the list will be ignored."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdSegmentsId'."]:
+ """Batch update members in a Mailchimp list segment.
+
+ Use this tool to batch add or remove members in a specified static segment of a Mailchimp list. This is useful for efficiently managing segment membership within a list.""" # noqa: E501
+ request_data: Any = {"members_to_add": emails_to_add_to_segment, "members_to_remove": emails_to_remove_from_segment} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments/{segment_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, segment_id=segment_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_segment_members_info(
+ context: ToolContext,
+ list_identifier: Annotated[str, "The unique ID representing the mailing list from which the segment members will be retrieved. This ID is required to specify the context of the segment."], # noqa: E501
+ segment_unique_id: Annotated[str, "The unique ID for the segment to retrieve members from."],
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ include_cleaned_members: Annotated[str | None, "Specify 'true' to include cleaned (invalid or bounced) members in the response. Otherwise, specify 'false'."] = None, # noqa: E501
+ include_transactional_members: Annotated[str | None, "Set to true to include transactional members in the response."] = None, # noqa: E501
+ include_unsubscribed_members: Annotated[str | None, "Specify 'true' to include unsubscribed members in the response, 'false' to exclude them."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "Comma-separated list of specific fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination purposes. Default is 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "The number of records to return. Default is 10; maximum is 1000."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdSegmentsIdMembers'."]:
+ """Get information about members in a saved segment.
+
+ Use this tool to retrieve information about members within a specified segment. It is useful when you need details on who is part of a particular saved segment in a mailing list.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments/{segment_id}/members".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_identifier, segment_id=segment_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": fields_to_exclude, "count": records_to_return, "offset": pagination_offset, "include_cleaned": include_cleaned_members, "include_transactional": include_transactional_members, "include_unsubscribed": include_unsubscribed_members}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_member_to_static_segment(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list to which the segment belongs."], # noqa: E501
+ segment_id: Annotated[str, "The unique ID for the segment to which the member will be added."],
+ subscriber_email_address: Annotated[str, "The email address of the subscriber to be added to the static segment."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdSegmentsIdMembers'."]:
+ """Add a member to a Mailchimp static segment.
+
+ Use this tool to add a new member to a specific static segment within a Mailchimp list. This is helpful for updating subscriber lists with targeted segments.""" # noqa: E501
+ request_data: Any = {"email_address": subscriber_email_address}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments/{segment_id}/members".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, segment_id=segment_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def remove_member_from_mailchimp_segment(
+ context: ToolContext,
+ email_md5_hash: Annotated[str, "The MD5 hash of the lowercase version of the list member's email address."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique ID of the mailing list from which the member will be removed."], # noqa: E501
+ segment_unique_id: Annotated[str, "The unique identifier for the Mailchimp segment from which the member will be removed."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdSegmentsIdMembersId'."]: # noqa: E501
+ """Remove a member from a Mailchimp static segment.
+
+ Use this tool to delete a member from a specific static segment in Mailchimp. It should be called when you need to manage segment memberships by removing a subscriber.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/segments/{segment_id}/members/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, segment_id=segment_unique_id, subscriber_hash=email_md5_hash), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def search_tags_by_name(
+ context: ToolContext,
+ list_id: Annotated[str, "The unique identifier for a Mailchimp list. This is essential for specifying which list to search for tags."], # noqa: E501
+ tag_name_search_query: Annotated[str | None, "The prefix to filter tags by name. Returns tags where names start with this query."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'searchTagsByName'."]:
+ """Search for tags on a list by name.
+
+ Use this tool to find specific tags by name within a Mailchimp list. If no name is provided, it will return all tags on the list.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/tag-search".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"name": tag_name_search_query}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_mailchimp_list_members(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list to retrieve member information from."], # noqa: E501
+ changed_after_timestamp: Annotated[str | None, "Restrict results to subscribers whose information changed after the specified timestamp in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ email_type: Annotated[str | None, "Specify the type of email format. Typically 'html' or 'text'."] = None, # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ filter_by_interest_ids: Annotated[str | None, "Comma-separated list of interest IDs to filter list members. Must be combined with interest_category_id and interest_match."] = None, # noqa: E501
+ filter_by_since_last_campaign: Annotated[str | None, "Filter subscribers by their status (subscribed/unsubscribed/pending/cleaned) since the last email campaign. Requires member status."] = None, # noqa: E501
+ filter_unsubscribed_since: Annotated[str | None, "Filter subscribers who unsubscribed since a specific date. Must use 'unsubscribed' status only."] = None, # noqa: E501
+ filter_vip_members: Annotated[str | None, "Filter to return only VIP list members. Use `true` for VIPs only, `false` for all members."] = None, # noqa: E501
+ interest_category_id: Annotated[str | None, "The unique id for the interest category used to filter Mailchimp list members."] = None, # noqa: E501
+ interest_match_filter: Annotated[str | None, "Specify how to match list members by interests. Options: 'any', 'all', or 'none'. Must accompany interest_category_id and interest_ids."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return, between 10 and 1000, default is 10."] = None, # noqa: E501
+ opt_in_after_timestamp: Annotated[str | None, "Restrict results to subscribers who opted-in after the specified timeframe in ISO 8601 format: 2015-10-21T15:41:36+00:00."] = None, # noqa: E501
+ opt_in_before_timestamp: Annotated[str | None, "Restrict results to subscribers who opted in before the specified timeframe. Use ISO 8601 format."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_change_before_timeframe: Annotated[str | None, "Restrict results to subscribers whose information changed before the provided timeframe in ISO 8601 format (e.g., '2015-10-21T15:41:36+00:00')."] = None, # noqa: E501
+ sort_field_for_members: Annotated[str | None, "Specifies the field by which to sort the list members."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Determines the order direction for sorted results. Common values are 'asc' for ascending and 'desc' for descending."] = None, # noqa: E501
+ subscriber_status: Annotated[str | None, "The status of the subscriber (e.g., subscribed, unsubscribed, cleaned, pending)."] = None, # noqa: E501
+ unique_email_identifier: Annotated[str | None, "A unique identifier for the email address across all Mailchimp lists. Use this to filter for a specific member."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembers'."]:
+ """Retrieve member details from a specific Mailchimp list.
+
+ Use this tool to get information about members within a specified Mailchimp list. It's useful for accessing subscriber details such as email addresses and subscription status.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": number_of_records_to_return, "offset": pagination_offset, "email_type": email_type, "status": subscriber_status, "since_timestamp_opt": opt_in_after_timestamp, "before_timestamp_opt": opt_in_before_timestamp, "since_last_changed": changed_after_timestamp, "before_last_changed": restrict_change_before_timeframe, "unique_email_id": unique_email_identifier, "vip_only": filter_vip_members, "interest_category_id": interest_category_id, "interest_ids": filter_by_interest_ids, "interest_match": interest_match_filter, "sort_field": sort_field_for_members, "sort_dir": sort_order_direction, "since_last_campaign": filter_by_since_last_campaign, "unsubscribed_since": filter_unsubscribed_since}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_member_to_mailchimp_list(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_unique_id: Annotated[str | None, "The unique ID for the Mailchimp list to which a new member will be added. This ID can be found in the Mailchimp account settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ bypass_merge_field_validation: Annotated[str | None, "Set to true to accept member data without required merge fields. Defaults to false. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdMembers'."]:
+ """Add a new member to a Mailchimp list.
+
+ Use this tool to add a new subscriber to a specific Mailchimp list. It should be called when you need to manage mailing lists by adding new contacts.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path, query parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDMEMBERTOMAILCHIMPLIST"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path, query parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_unique_id:
+ missing_params.append(("list_unique_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDMEMBERTOMAILCHIMPLIST"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDMEMBERTOMAILCHIMPLIST"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/members".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDMEMBERTOMAILCHIMPLIST"],
+ params=remove_none_values({"skip_merge_validation": bypass_merge_field_validation}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_member_info(
+ context: ToolContext,
+ list_id: Annotated[str, "The unique ID for the Mailchimp list to retrieve the member from."],
+ member_identifier: Annotated[str, "The MD5 hash of the lowercase list member's email, or the email address/contact_id itself."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembersId'."]:
+ """Retrieve details about a specific list member in Mailchimp.
+
+ Get information about a specific list member, including their subscription status and other details. Useful for tracking and managing member information in Mailchimp mailing lists.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id, subscriber_hash=member_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_or_update_list_member(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ unique_list_id: Annotated[str | None, "The unique ID identifying the Mailchimp list where members are added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ subscriber_identifier: Annotated[str | None, "MD5 hash of the lowercase version of the member's email address, email address, or contact ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ bypass_merge_field_check: Annotated[str | None, "Set to true to allow member data without required merge fields. Defaults to false. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'putListsIdMembersId'."]:
+ """Add or update a member in a Mailchimp list.
+
+ Use this tool to add a new member to a specific Mailchimp list or update the information of an existing member. This is useful for managing list subscriptions effectively.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path, query parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDORUPDATELISTMEMBER"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path, query parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not unique_list_id:
+ missing_params.append(("unique_list_id", "path"))
+ if not subscriber_identifier:
+ missing_params.append(("subscriber_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDORUPDATELISTMEMBER"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDORUPDATELISTMEMBER"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=unique_list_id, subscriber_hash=subscriber_identifier), # noqa: E501 # noqa: UP032
+ method="PUT",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDORUPDATELISTMEMBER"],
+ params=remove_none_values({"skip_merge_validation": bypass_merge_field_check}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_list_member_info(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_unique_id: Annotated[str | None, "The unique ID for the Mailchimp list. This ID identifies which list to update the member information in. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ member_identifier: Annotated[str | None, "The MD5 hash of the lowercase list member's email, email address, or contact_id. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ skip_merge_validation: Annotated[str | None, "Set to true to allow member data without merge field values, even if usually required. Defaults to false. Only used when mode is 'execute'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsIdMembersId'."]:
+ """Update information for a specific list member in Mailchimp.
+
+ Use this tool to update the details of a particular member on a Mailchimp list. It should be called when you need to modify any member's information, such as their email address or other personal details, within a given list.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path, query parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERINFO"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path, query parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_unique_id:
+ missing_params.append(("list_unique_id", "path"))
+ if not member_identifier:
+ missing_params.append(("member_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERINFO"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERINFO"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERINFO"],
+ params=remove_none_values({"skip_merge_validation": skip_merge_validation}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def archive_list_member(
+ context: ToolContext,
+ mailing_list_id: Annotated[str, "The unique identifier for the specific Mailchimp list to archive a member from."], # noqa: E501
+ member_identifier: Annotated[str, "The MD5 hash of the lowercase version of the list member's email address, or use the email address/contact_id directly."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdMembersId'."]:
+ """Archives a member from a Mailchimp list.
+
+ Use this tool to archive a member from a specific Mailchimp list when they should no longer receive communications. Note that this is not a permanent deletion.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=mailing_list_id, subscriber_hash=member_identifier), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_member_activity(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list you want to query."],
+ member_identifier: Annotated[str, "MD5 hash of the lowercase email, email address, or contact ID of the list member."], # noqa: E501
+ actions_to_return: Annotated[str | None, "Comma-separated list of specific member actions to retrieve, such as opens, clicks, and unsubscribes."] = None, # noqa: E501
+ exclude_fields_from_activity: Annotated[str | None, "A comma-separated list of fields to exclude from the member activity response. Use dot notation for sub-objects."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "Comma-separated list of specific fields to retrieve for member activity, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembersIdActivity'."]:
+ """Retrieve recent email activity for a list member.
+
+ Call this tool to get the last 50 activity events for a specific member on a Mailchimp list, including actions like opens, clicks, and unsubscribes.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/activity".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_fields_from_activity, "action": actions_to_return}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_member_activity_feed(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list. Required to retrieve the member's activity data."], # noqa: E501
+ member_identifier: Annotated[str, "The MD5 hash of the lowercase version of the list member's email address, or the email address itself, or contact_id."], # noqa: E501
+ activity_type_filters: Annotated[str | None, "Comma-separated list of activity types to filter by, such as 'open', 'bounce', or 'click'."] = None, # noqa: E501
+ exclude_fields_from_response: Annotated[str | None, "Comma-separated list of fields to exclude from the response, use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of activity records to return. Default is 10, max is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembersIdActivityFeed'."]:
+ """Fetch a Mailchimp list member's activity details.
+
+ Use this tool to get a detailed record of a member's activities on a specific Mailchimp list, including email opens, link clicks, and unsubscribe actions.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/activity-feed".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_from_response, "count": number_of_records_to_return, "offset": pagination_offset, "activity_filters": activity_type_filters}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def retrieve_member_tags(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the mailing list. Required to specify which list to retrieve member tags from."], # noqa: E501
+ member_identifier: Annotated[str, "The MD5 hash of the lowercase version of the email, or email address, or contact_id of the list member."], # noqa: E501
+ exclude_specific_fields: Annotated[str | None, "A comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ record_count: Annotated[str | None, "Specify the number of records to return, between 1 and 1000. Default is 10."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListMemberTags'."]:
+ """Fetches tags for a specific mailing list member.
+
+ Use this tool to retrieve all tags associated with a specific member of a mailing list identified by their subscriber hash.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/tags".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_specific_fields, "count": record_count, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_list_member_tags(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_unique_id: Annotated[str | None, "The unique ID for the Mailchimp list to update tags for a member. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ subscriber_email_hash: Annotated[str | None, "The MD5 hash of the lowercase version of the list member's email address. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListMemberTags'."]:
+ """Add or remove tags from a Mailchimp list member.
+
+ Use this tool to manage tags for a specific member in a Mailchimp list. It allows adding new tags or removing existing ones. If a non-existent tag is added and marked as 'active', it will be created automatically.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERTAGS"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_unique_id:
+ missing_params.append(("list_unique_id", "path"))
+ if not subscriber_email_hash:
+ missing_params.append(("subscriber_email_hash", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERTAGS"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERTAGS"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/tags".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=subscriber_email_hash), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATELISTMEMBERTAGS"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def retrieve_contact_events(
+ context: ToolContext,
+ contact_identifier: Annotated[str, "The unique identifier for the list member. This can be the MD5 hash of the lowercase email address, the email address itself, or the contact ID."], # noqa: E501
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list from which to retrieve contact events."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated fields to exclude from the response using dot notation for sub-objects."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_to_return_count: Annotated[str | None, "The number of records to return. Default is 10 and maximum is 1000."] = None, # noqa: E501
+ return_field_list: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembersIdEvents'."]:
+ """Retrieve events for a specific contact in a list.
+
+ Use this tool to obtain detailed event information for a specific contact in a Mailchimp list. This is useful for tracking interactions or activities associated with a subscriber.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/events".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=contact_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"count": records_to_return_count, "offset": pagination_offset, "fields": return_field_list, "exclude_fields": exclude_fields}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_list_member_event(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_identifier: Annotated[str | None, "The unique identifier for the Mailchimp list. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ list_member_identifier: Annotated[str | None, "The MD5 hash of the lowercase version of the list member's email address, or the email address/contact_id. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListMemberEvents'."]:
+ """Add an event for a list member in Mailchimp.
+
+ This tool adds an event to a specific list member in Mailchimp. It should be called when you need to track a specific activity or event for a subscriber in a mailing list.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDLISTMEMBEREVENT"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_identifier:
+ missing_params.append(("list_identifier", "path"))
+ if not list_member_identifier:
+ missing_params.append(("list_member_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDLISTMEMBEREVENT"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDLISTMEMBEREVENT"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/events".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_identifier, subscriber_hash=list_member_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDLISTMEMBEREVENT"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_member_goal_events(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list. Required for fetching member goal events."], # noqa: E501
+ member_identifier: Annotated[str, "The MD5 hash of the lowercase version of the member's email, email address, or contact_id."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of specific fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembersIdGoals'."]:
+ """Retrieve the last 50 goal events for a specific list member.
+
+ Use this tool to get the most recent goal achievement events for a member within a particular Mailchimp list. This can be useful for tracking user engagement and performance metrics.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/goals".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_member_notes(
+ context: ToolContext,
+ list_id: Annotated[str, "The unique ID of the Mailchimp list to retrieve notes for."],
+ subscriber_hash: Annotated[str, "The MD5 hash of the lowercase version of the list member's email address. Used to identify the list member."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of member notes to return, between 1 and 1000. Default is 10."] = None, # noqa: E501
+ order_direction: Annotated[str | None, "Specifies the order direction for sorted note results. Accepts 'asc' or 'desc'."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ sort_notes_by_field: Annotated[str | None, "Specify the field to sort the notes by, e.g., 'created_at' or 'updated_at'."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembersIdNotes'."]:
+ """Retrieve recent notes for a Mailchimp list member.
+
+ Use this tool to access the most recent notes associated with a specific member of a Mailchimp list, identified by their subscriber hash.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/notes".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id, subscriber_hash=subscriber_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"sort_field": sort_notes_by_field, "sort_dir": order_direction, "fields": include_fields, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_note_to_subscriber(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list. This is required to add a note to a subscriber's profile in the specified list."], # noqa: E501
+ subscriber_email_hash: Annotated[str, "MD5 hash of the lowercase version of the subscriber's email address."], # noqa: E501
+ subscriber_note_content: Annotated[str | None, "The content of the note for a subscriber. It must be limited to 1,000 characters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdMembersIdNotes'."]:
+ """Add a new note for a specific subscriber in Mailchimp.
+
+ Use this tool to add a note to a subscriber's profile in a specific list on Mailchimp. This is useful for keeping track of important information or interactions related to the subscriber.""" # noqa: E501
+ request_data: Any = {"note": subscriber_note_content}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/notes".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=subscriber_email_hash), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_member_note(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the mailing list to retrieve a member's note from."], # noqa: E501
+ member_identifier: Annotated[str, "The MD5 hash of the lowercase email, the email address itself, or contact ID for a list member."], # noqa: E501
+ note_id: Annotated[str, "The unique identifier for the note associated with a list member."],
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMembersIdNotesId'."]:
+ """Retrieve a specific note for a list member.
+
+ Use this tool to obtain details of a particular note associated with a member of a specific list. It's helpful for accessing specific interactions or annotations recorded for a list member.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier, note_id=note_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_member_note(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the mailing list where the note is being updated."], # noqa: E501
+ member_identifier: Annotated[str, "The MD5 hash, email address, or contact_id of the list member."], # noqa: E501
+ note_identifier: Annotated[str, "The unique identifier for the note to be updated."],
+ note_content: Annotated[str | None, "Content of the note to be updated. Must not exceed 1,000 characters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsIdMembersIdNotesId'."]:
+ """Update a specific note for a list member in Mailchimp.
+
+ This tool updates a specific note for a given list member on Mailchimp. Use this when you need to modify the content of an existing note associated with a subscriber in a mailing list.""" # noqa: E501
+ request_data: Any = {"note": note_content}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier, note_id=note_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_member_note(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the list in which the member's note is to be deleted."], # noqa: E501
+ member_identifier: Annotated[str, "The MD5 hash of the member's email (in lowercase), the email itself, or contact_id for identifying list members."], # noqa: E501
+ note_id: Annotated[str, "The ID for the specific note you want to delete for a list member."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdMembersIdNotesId'."]:
+ """Delete a specific note for a list member.
+
+ Use this tool to delete a specific note associated with a list member in Mailchimp. It should be called when there is a need to remove a note from a contact's record in a specific list.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_identifier, note_id=note_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_member_data_permanently(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID of the list from which the member will be deleted. This ID identifies the target list in Mailchimp."], # noqa: E501
+ member_email_hash: Annotated[str, "MD5 hash of the lowercase version of the member's email address."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdMembersHashActionsDeletePermanent'."]: # noqa: E501
+ """Permanently delete a list member's data in Mailchimp.
+
+ This tool deletes all personally identifiable information related to a specific list member and removes them from the list, ensuring they cannot be re-imported.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/members/{subscriber_hash}/actions/delete-permanent".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, subscriber_hash=member_email_hash), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_audience_merge_fields(
+ context: ToolContext,
+ audience_list_id: Annotated[str, "The unique ID for the audience list in Mailchimp."],
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ is_required_merge_field: Annotated[str | None, "Indicates if the merge field is required. Pass 'true' or 'false'."] = None, # noqa: E501
+ merge_field_type: Annotated[str | None, "Specify the type of merge field to retrieve, such as 'text', 'number', etc."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return, between 1 and 1000 (default is 10)."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMergeFields'."]:
+ """Get a list of all merge fields for an audience.
+
+ Use this tool to retrieve all the merge fields associated with a specific audience in Mailchimp. This is useful for understanding the structure and data fields available within an audience.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/merge-fields".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=audience_list_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset, "type": merge_field_type, "required": is_required_merge_field}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_audience_merge_field(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ audience_list_id: Annotated[str | None, "The unique ID of the Mailchimp audience list to which the merge field will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdMergeFields'."]:
+ """Add a new merge field to a specific audience.
+
+ This tool is used to add a new merge field for a specific audience in Mailchimp. It should be called when you need to enhance the audience profile with additional information fields.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDAUDIENCEMERGEFIELD"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not audience_list_id:
+ missing_params.append(("audience_list_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDAUDIENCEMERGEFIELD"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDAUDIENCEMERGEFIELD"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/merge-fields".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=audience_list_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDAUDIENCEMERGEFIELD"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_merge_field_info(
+ context: ToolContext,
+ list_id: Annotated[str, "The unique ID of the Mailchimp list to get merge field information from."], # noqa: E501
+ merge_field_id: Annotated[str, "The unique identifier for the merge field in the list."],
+ exclude_merge_fields: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Specify the fields to return, using comma-separated dot notation for nested fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdMergeFieldsId'."]:
+ """Retrieve information about a specific merge field.
+
+ Use this tool to obtain detailed information about a specific merge field in a Mailchimp list. It's useful for accessing customized data fields associated with members of email lists.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/merge-fields/{merge_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id, merge_id=merge_field_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"exclude_fields": exclude_merge_fields, "fields": fields_to_return}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_merge_field(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_id: Annotated[str | None, "The unique ID for the list to update the merge field in. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ merge_field_id: Annotated[str | None, "The unique ID for the specific merge field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsIdMergeFieldsId'."]:
+ """Update a specific merge field in a list.
+
+ This tool updates a specific merge field for a given list in Mailchimp. Use it when you need to modify the properties of a merge field, such as its name or type, within a specific list.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEMERGEFIELD"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_id:
+ missing_params.append(("list_id", "path"))
+ if not merge_field_id:
+ missing_params.append(("merge_field_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEMERGEFIELD"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEMERGEFIELD"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/merge-fields/{merge_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id, merge_id=merge_field_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEMERGEFIELD"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_merge_field(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list from which to delete the merge field."], # noqa: E501
+ merge_field_id: Annotated[str, "The ID for the merge field to delete from the Mailchimp list."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdMergeFieldsId'."]:
+ """Delete a specific merge field from a Mailchimp list.
+
+ Use this tool to remove a specific merge field from a Mailchimp list. This action is irreversible and will delete the specified merge field associated with the given list.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/merge-fields/{merge_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, merge_id=merge_field_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_webhooks_info(
+ context: ToolContext,
+ list_unique_identifier: Annotated[str, "The unique identifier for the mailing list to retrieve webhook information."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdWebhooks'."]:
+ """Get information about all webhooks for a specific list.
+
+ Use this tool to retrieve detailed information about all the webhooks associated with a specified mailing list. Ideal for managing or auditing webhook configurations.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/webhooks".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_webhook(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ mailchimp_list_id: Annotated[str | None, "The unique ID for the Mailchimp list for which the webhook will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdWebhooks'."]:
+ """Create a new webhook for a specific Mailchimp list.
+
+ Use this tool to set up a new webhook for a designated list in Mailchimp, allowing automated event-driven notifications.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPWEBHOOK"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not mailchimp_list_id:
+ missing_params.append(("mailchimp_list_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPWEBHOOK"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPWEBHOOK"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/webhooks".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=mailchimp_list_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["CREATEMAILCHIMPWEBHOOK"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_webhook_info(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the Mailchimp list to retrieve the webhook information."], # noqa: E501
+ webhook_id: Annotated[str, "Provide the unique ID of the webhook to retrieve its information."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdWebhooksId'."]:
+ """Retrieve details of a specific Mailchimp webhook.
+
+ Use this tool to get detailed information about a specific webhook in your Mailchimp list by providing the list and webhook IDs.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/webhooks/{webhook_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, webhook_id=webhook_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_mailchimp_webhook(
+ context: ToolContext,
+ list_id: Annotated[str, "The unique ID for the Mailchimp list from which the webhook will be deleted. This ID identifies the list containing the target webhook."], # noqa: E501
+ webhook_id: Annotated[str, "The unique identifier for the webhook to be deleted from the specified Mailchimp list."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteListsIdWebhooksId'."]:
+ """Delete a specific webhook from a Mailchimp list.
+
+ Use this tool to remove a webhook from a specified Mailchimp list by providing the list and webhook IDs.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/webhooks/{webhook_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id, webhook_id=webhook_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_webhook_settings(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_id: Annotated[str | None, "The unique identifier for the mailing list associated with the webhook. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ webhook_identifier: Annotated[str | None, "The unique identifier for the webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchListsIdWebhooksId'."]:
+ """Update the settings for an existing webhook.
+
+ Use this tool to modify the configuration of a specific webhook linked to a mailing list. This is useful for changing how the webhook operates without creating a new one.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEWEBHOOKSETTINGS"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_id:
+ missing_params.append(("list_id", "path"))
+ if not webhook_identifier:
+ missing_params.append(("webhook_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEWEBHOOKSETTINGS"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEWEBHOOKSETTINGS"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/webhooks/{webhook_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_id, webhook_id=webhook_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEWEBHOOKSETTINGS"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_signup_forms(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID of the Mailchimp list for retrieving signup forms."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdSignupForms'."]:
+ """Retrieve signup forms for a Mailchimp list.
+
+ Use this tool to fetch all signup forms associated with a specific Mailchimp list using the list ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/signup-forms".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def customize_list_signup_form(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ list_unique_id: Annotated[str | None, "The unique ID for the Mailchimp list to customize the signup form. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdSignupForms'."]:
+ """Customize a list's default signup form in Mailchimp.
+
+ Use this tool to modify the default signup form for a specific list in Mailchimp's marketing platform. Ideal for tailoring signup forms to better match branding or collect specific user information.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["CUSTOMIZELISTSIGNUPFORM"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not list_unique_id:
+ missing_params.append(("list_unique_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["CUSTOMIZELISTSIGNUPFORM"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["CUSTOMIZELISTSIGNUPFORM"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/lists/{list_id}/signup-forms".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["CUSTOMIZELISTSIGNUPFORM"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_subscriber_locations(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique ID for the subscriber list in Mailchimp."],
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdLocations'."]:
+ """Retrieve subscriber location data by list.
+
+ Call this tool to get the countries associated with the subscribers of a specific list in Mailchimp, based on geocoded IP addresses.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/locations".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_list_surveys_info(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the list to retrieve survey information. This ID is essential for specifying which list's surveys to access."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdSurveys'."]:
+ """Retrieve information about surveys for a specific list.
+
+ Call this tool to get information about all available surveys associated with a specific list in Mailchimp. Useful for managing and analyzing survey data linked to email lists.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/surveys".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_details(
+ context: ToolContext,
+ list_unique_id: Annotated[str, "The unique identifier for the Mailchimp list associated with the survey."], # noqa: E501
+ survey_id: Annotated[str, "The unique ID of the survey to retrieve details for in Mailchimp."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getListsIdSurveysId'."]:
+ """Retrieve details about a specific Mailchimp survey.
+
+ Use this tool to gather detailed information about a particular survey associated with a specific list in Mailchimp. It is helpful for understanding survey content, status, and related data.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/surveys/{survey_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_unique_id, survey_id=survey_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def publish_mailchimp_survey(
+ context: ToolContext,
+ mailchimp_list_id: Annotated[str, "The unique ID for the Mailchimp list associated with the survey."], # noqa: E501
+ survey_id: Annotated[str, "The unique identifier of the survey to be published. Required for specifying which survey to publish."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdSurveysIdActionsPublish'."]: # noqa: E501
+ """Publishes a Mailchimp survey from draft to published status.
+
+ Use this tool to publish a Mailchimp survey that is currently in draft, unpublished, or has been edited after previous publication. The tool confirms the survey's new status upon successful publishing.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/surveys/{survey_id}/actions/publish".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=mailchimp_list_id, survey_id=survey_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def unpublish_mailchimp_survey(
+ context: ToolContext,
+ mailchimp_list_id: Annotated[str, "The unique ID for the Mailchimp list associated with the survey to unpublish."], # noqa: E501
+ survey_id: Annotated[str, "Enter the unique ID of the survey to unpublish in Mailchimp."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdSurveysIdActionsUnpublish'."]: # noqa: E501
+ """Unpublish a survey in Mailchimp Marketing.
+
+ Use this tool to unpublish a survey that has been published in Mailchimp Marketing. This action is useful when you need to deactivate a survey for any reason.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/surveys/{survey_id}/actions/unpublish".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=mailchimp_list_id, survey_id=survey_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_survey_campaign_email(
+ context: ToolContext,
+ list_identifier: Annotated[str, "The unique identifier for the email list."],
+ survey_identifier: Annotated[str, "The unique identifier for the survey to link in the campaign email."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postListsIdSurveysIdActionsCreateEmail'."]: # noqa: E501
+ """Generate a campaign email linking to a survey.
+
+ Use this tool to create an email campaign that includes a link to a given survey, using specified List ID and Survey ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/lists/{list_id}/surveys/{survey_id}/actions/create-email".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), list_id=list_identifier, survey_id=survey_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_all_landing_pages(
+ context: ToolContext,
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of fields to include in the response, using dot notation for nested fields."] = None, # noqa: E501
+ record_count: Annotated[str | None, "Specify the number of landing page records to return. Defaults to 10; maximum is 1000."] = None, # noqa: E501
+ sort_by_field: Annotated[str | None, "Specify the field by which the landing pages should be sorted."] = None, # noqa: E501
+ sort_direction: Annotated[str | None, "Specifies the order direction for sorting the results (e.g., ascending or descending)."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAllLandingPages'."]:
+ """Retrieve all landing pages from Mailchimp.
+
+ Use this tool to obtain a comprehensive list of all landing pages available in your Mailchimp account. Useful for marketing analysis and content management.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"sort_dir": sort_direction, "sort_field": sort_by_field, "fields": include_fields, "exclude_fields": exclude_fields_list, "count": record_count}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_landing_page(
+ context: ToolContext,
+ enable_restricted_data_processing: Annotated[bool | None, "Enable restricted data processing under CCPA for tracking. True ensures compliance with CCPA."] = None, # noqa: E501
+ landing_page_description: Annotated[str | None, "Provide a description for the Mailchimp landing page."] = None, # noqa: E501
+ landing_page_name: Annotated[str | None, "The name of the landing page to be created."] = None,
+ landing_page_template_id: Annotated[int | None, "The integer ID representing the template of the Mailchimp landing page."] = None, # noqa: E501
+ landing_page_template_type: Annotated[str | None, "Specifies the template type for the landing page. Options are 'signup' or 'product'."] = None, # noqa: E501
+ landing_page_title: Annotated[str | None, "The title that appears in the browser's title bar for the landing page."] = None, # noqa: E501
+ mailchimp_list_id: Annotated[str | None, "The ID of the Mailchimp list associated with the landing page."] = None, # noqa: E501
+ store_identifier: Annotated[str | None, "The unique identifier of the store linked to this landing page."] = None, # noqa: E501
+ track_with_mailchimp: Annotated[bool | None, "Set to true to use cookies for tracking unique visitors and calculating conversion rates."] = None, # noqa: E501
+ use_account_default_list: Annotated[str | None, "Set to 'true' to use the account's default list instead of specifying a list_id for the landing page."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postAllLandingPages'."]:
+ """Create an unpublished Mailchimp landing page.
+
+ This tool is used to create a new, unpublished landing page in Mailchimp without any content. It should be called when there's a need to set up a basic landing page framework in Mailchimp.""" # noqa: E501
+ request_data: Any = {"name": landing_page_name, "title": landing_page_title, "description": landing_page_description, "store_id": store_identifier, "list_id": mailchimp_list_id, "type": landing_page_template_type, "template_id": landing_page_template_id, "tracking": {"track_with_mailchimp": track_with_mailchimp, "enable_restricted_data_processing": enable_restricted_data_processing}} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({"use_default_list": use_account_default_list}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_landing_page_info(
+ context: ToolContext,
+ landing_page_id: Annotated[str, "The unique identifier for the landing page to retrieve information about."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getLandingPageId'."]:
+ """Retrieve information about a specific landing page by ID.
+
+ This tool is used to fetch detailed information about a landing page using its ID. It should be called when you need to access the specifics of a given landing page.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages/{page_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), page_id=landing_page_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_landing_page(
+ context: ToolContext,
+ landing_page_id: Annotated[str, "The unique ID for the landing page to be updated."],
+ enable_restricted_data_processing: Annotated[bool | None, "Set to true to enable Google’s restricted data processing in compliance with the CCPA for this landing page."] = None, # noqa: E501
+ enable_tracking_with_mailchimp: Annotated[bool | None, "Enable cookie tracking to monitor unique visitors and calculate conversion rates. More info: [here](https://mailchimp.com/help/use-track-mailchimp/)."] = None, # noqa: E501
+ landing_page_description: Annotated[str | None, "Provide a description for the landing page. This text summarizes the page's purpose and content."] = None, # noqa: E501
+ landing_page_name: Annotated[str | None, "The name for the landing page to be updated."] = None,
+ landing_page_title: Annotated[str | None, "The title displayed in the browser's title bar for the landing page."] = None, # noqa: E501
+ list_id_for_landing_page: Annotated[str | None, "The ID of the list associated with this landing page."] = None, # noqa: E501
+ store_id: Annotated[str | None, "The ID of the store associated with this landing page. It must match an existing store in the Mailchimp account."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchLandingPageId'."]:
+ """Update a landing page on Mailchimp.
+
+ Use this tool to update an existing landing page on Mailchimp. Provide the necessary details for the landing page you wish to update.""" # noqa: E501
+ request_data: Any = {"name": landing_page_name, "title": landing_page_title, "description": landing_page_description, "store_id": store_id, "list_id": list_id_for_landing_page, "tracking": {"track_with_mailchimp": enable_tracking_with_mailchimp, "enable_restricted_data_processing": enable_restricted_data_processing}} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages/{page_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), page_id=landing_page_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_landing_page(
+ context: ToolContext,
+ landing_page_id: Annotated[str, "The unique ID for the landing page to be deleted."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteLandingPageId'."]:
+ """Delete a specified landing page.
+
+ Use this tool to delete a landing page by providing its ID. Ideal for managing or updating landing pages by removing outdated or unnecessary ones.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages/{page_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), page_id=landing_page_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def publish_landing_page(
+ context: ToolContext,
+ landing_page_id: Annotated[str, "The unique identifier for the landing page to publish."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postLandingPageIdActionsPublish'."]:
+ """Publishes a landing page from draft or edited state.
+
+ Use this tool to publish a landing page that is currently in draft, unpublished, or has been edited after a previous publication.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages/{page_id}/actions/publish".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), page_id=landing_page_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def unpublish_landing_page(
+ context: ToolContext,
+ landing_page_id: Annotated[str, "The unique ID of the landing page to be unpublished. Required for identifying the specific page on Mailchimp."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postLandingPageIdActionsUnpublish'."]: # noqa: E501
+ """Unpublish a draft or published landing page.
+
+ Used to unpublish a landing page that is currently in draft or has been published on Mailchimp. This can be useful for managing the visibility of a page.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages/{page_id}/actions/unpublish".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), page_id=landing_page_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_landing_page_html(
+ context: ToolContext,
+ landing_page_id: Annotated[str, "The unique identifier for the Mailchimp landing page to retrieve."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for nested objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getLandingPageIdContent'."]:
+ """Retrieve the HTML content of a Mailchimp landing page.
+
+"""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/landing-pages/{page_id}/content".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), page_id=landing_page_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_reports(
+ context: ToolContext,
+ campaign_type: Annotated[str | None, "Specify the type of campaign to retrieve reports for. Valid options are dependent on Mailchimp's supported campaign types."] = None, # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "Comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return, ranging from 10 to 1000. Default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_to_campaigns_sent_after: Annotated[str | None, "Restrict the response to campaigns sent after the specified ISO 8601 date and time."] = None, # noqa: E501
+ restrict_to_campaigns_sent_before: Annotated[str | None, "Restrict response to campaigns sent before this ISO 8601 time format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReports'."]:
+ """Retrieve detailed campaign reports from Mailchimp.
+
+ This tool retrieves campaign performance reports from Mailchimp Marketing. It should be called when detailed analytics about email campaigns are needed, such as open rates, click rates, and other metrics.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset, "type": campaign_type, "before_send_time": restrict_to_campaigns_sent_before, "since_send_time": restrict_to_campaigns_sent_after}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_report_details(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique ID for the campaign to retrieve its report details."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to be excluded from the response. Use dot notation for sub-object references."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsId'."]:
+ """Retrieve detailed report for a specific sent campaign.
+
+ Use this tool to access the report details of a specific campaign that has been sent. It provides insights and metrics for evaluating the campaign's performance.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_abuse_reports(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the email marketing campaign to fetch abuse complaints."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude in the response using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for nested fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdAbuseReportsId'."]:
+ """Get a list of abuse complaints for a specific campaign.
+
+ Call this tool to retrieve and review all abuse complaints related to a particular email marketing campaign. Useful for tracking and managing issues with campaign recipients reporting spam or other abuses.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/abuse-reports".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_abuse_report_details(
+ context: ToolContext,
+ abuse_report_id: Annotated[str, "The unique identifier for the abuse report. This ID is necessary to retrieve the specific report details."], # noqa: E501
+ campaign_unique_id: Annotated[str, "The unique identifier for the campaign to fetch the abuse report details."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdAbuseReportsIdId'."]:
+ """Retrieve details of an abuse report for a campaign.
+
+ Use this tool to get information about a specific abuse report related to a campaign. It should be called when detailed information about an abuse report is required for analysis or record-keeping.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/abuse-reports/{report_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, report_id=abuse_report_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_advice_feedback(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the campaign to get advice feedback on."], # noqa: E501
+ exclude_fields_to_return: Annotated[str | None, "A comma-separated list of fields to omit in the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated fields to include in the response. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdAdvice'."]:
+ """Get feedback based on a campaign's performance data.
+
+ This tool provides advice and feedback derived from various campaign statistics, such as open rates, click-through rates, unsubscribes, and bounces. Use it to gain insights into campaign effectiveness and areas for improvement.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/advice".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_to_return}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_click_details(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for a specific Mailchimp campaign. Required to fetch corresponding click details."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of click records to return. The default is 10, and the maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ sort_by_field: Annotated[str | None, "Specify the field to sort click reports by, such as 'clicks', 'unique_clicks', or 'link_name'."] = None, # noqa: E501
+ sort_direction: Annotated[str | None, "Determines the order direction for sorted results, such as ascending or descending."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdClickDetails'."]:
+ """Get details about link clicks in Mailchimp campaigns.
+
+ Use this tool to obtain detailed information about clicks on specific links in your Mailchimp marketing campaigns. It helps analyze the engagement by providing insights into which links were clicked and how often.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/click-details".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": fields_to_exclude, "count": number_of_records_to_return, "offset": pagination_offset, "sort_field": sort_by_field, "sort_dir": sort_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_link_click_details(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the Mailchimp campaign to fetch link click details."], # noqa: E501
+ link_identifier: Annotated[str, "The unique identifier for the link whose click details are to be retrieved in the campaign report."], # noqa: E501
+ excluded_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdClickDetailsId'."]:
+ """Get click details for a specific campaign link.
+
+ Fetch detailed click information for a specific link within a Mailchimp campaign report. Useful for analyzing link engagement.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/click-details/{link_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, link_id=link_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": excluded_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def fetch_click_details_for_campaign(
+ context: ToolContext,
+ campaign_id: Annotated[str, "A unique identifier for the email marketing campaign to retrieve click details."], # noqa: E501
+ link_identifier: Annotated[str, "The unique identifier for the specific link in the campaign. This ID is used to retrieve details of list members who clicked the link."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for nested fields."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ record_count: Annotated[str | None, "The number of member records to return. Default is 10 and the maximum is 1000."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdClickDetailsIdMembers'."]: # noqa: E501
+ """Retrieve details on members who clicked a specific campaign link.
+
+ This tool retrieves information about list members who clicked on a specific link in an email marketing campaign. It should be called when you need insights into which members interacted with a particular link within a campaign.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/click-details/{link_id}/members".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id, link_id=link_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": record_count, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_subscriber_click_details(
+ context: ToolContext,
+ campaign_id: Annotated[str, "The unique identifier for the campaign to get subscriber click details."], # noqa: E501
+ link_identifier: Annotated[str, "The unique ID for the link clicked within a campaign. Use to specify which link's click details to retrieve."], # noqa: E501
+ subscriber_email_hash: Annotated[str, "The MD5 hash of the lowercase version of the subscriber's email address."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude from the result, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of specific fields to include in the response. Use dot notation for nested objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdClickDetailsIdMembersId'."]: # noqa: E501
+ """Retrieve details of a subscriber's link click in a campaign.
+
+ This tool fetches information about a specific subscriber who clicked a link within a specific campaign in Mailchimp. It should be called when you need to analyze subscriber engagement by retrieving who clicked on which links in a campaign.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/click-details/{link_id}/members/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_id, link_id=link_identifier, subscriber_hash=subscriber_email_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_open_details(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the campaign. Required to retrieve open details for specific campaign emails."], # noqa: E501
+ exclude_fields_to_return: Annotated[str | None, "Comma-separated fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records from the collection to skip for pagination. Default is 0."] = None, # noqa: E501
+ sort_by_field: Annotated[str | None, "Specify the field by which to sort the open reports. Choose from available fields to determine the order of results."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Specify the order direction for sorted results. Use 'asc' for ascending or 'desc' for descending."] = None, # noqa: E501
+ start_date_time_for_campaign_open_events: Annotated[str | None, "Restrict results to campaign open events that occur after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdOpenDetails'."]:
+ """Get details on opened campaign emails by list members.
+
+ Use this tool to retrieve detailed information about emails from a specific campaign that were opened by list members. Ideal for understanding engagement and assessing campaign performance.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/open-details".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_to_return, "count": number_of_records_to_return, "offset": pagination_offset, "since": start_date_time_for_campaign_open_events, "sort_field": sort_by_field, "sort_dir": sort_order_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_subscriber_open_details(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the campaign to retrieve subscriber open details."], # noqa: E501
+ subscriber_email_hash: Annotated[str, "The MD5 hash of the lowercase version of the subscriber's email address."], # noqa: E501
+ exclude_fields_from_response: Annotated[str | None, "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return for the subscriber's open details. Use dot notation for sub-object fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdOpenDetailsIdMembersId'."]: # noqa: E501
+ """Retrieve details of a subscriber who opened a campaign.
+
+ This tool fetches information about a specific subscriber who opened a given email campaign. It is useful for tracking engagement and understanding subscriber behavior in email marketing campaigns.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/open-details/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, subscriber_hash=subscriber_email_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_from_response}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_domain_performance(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the email campaign to retrieve domain performance statistics."], # noqa: E501
+ exclude_fields_from_report: Annotated[str | None, "Comma-separated list of fields to exclude from the report, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdDomainPerformance'."]:
+ """Get top domain performance for an email campaign.
+
+ Retrieve statistics on how email domains have performed in a specific campaign using the campaign ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/domain-performance".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_from_report}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_social_activity(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique id for the campaign to retrieve its social activity summary."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdEepurl'."]:
+ """Get social activity summary for a campaign using EepURL.
+
+ Use this tool to retrieve a summary of social activity tracked by EepURL for a specific campaign in Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/eepurl".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def retrieve_campaign_subscriber_activity(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for a specific email campaign."],
+ activity_since_timestamp: Annotated[str | None, "Restrict results to email activity events occurring after this timestamp, using ISO 8601 format."] = None, # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specifies how many records to return. The default is 10, with a maximum of 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdEmailActivity'."]:
+ """Retrieve subscriber activity for a specific campaign.
+
+ Use this tool to get a list of subscriber activities for a particular email campaign in Mailchimp. It provides information on how subscribers interacted with the campaign emails.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/email-activity".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": number_of_records_to_return, "offset": pagination_offset, "since": activity_since_timestamp}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_email_activity(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the campaign whose member activity is being retrieved."], # noqa: E501
+ subscriber_hash: Annotated[str, "The MD5 hash of the lowercase version of the list member's email address for which you want to retrieve activity."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude from the response using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ restrict_activity_since: Annotated[str | None, "Restrict results to email activity events occurring after this time (ISO 8601 format)."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdEmailActivityId'."]:
+ """Retrieve specific list member's activity in a campaign.
+
+ Get detailed information on a list member's activity in a campaign, including opens, clicks, and bounces, by providing the campaign ID and subscriber hash.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/email-activity/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, subscriber_hash=subscriber_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "since": restrict_activity_since}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def fetch_campaign_open_locations(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the specific marketing campaign."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records: Annotated[str | None, "Specify the number of location records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ records_to_skip: Annotated[str | None, "Number of records to skip for pagination purposes. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdLocations'."]:
+ """Retrieve top open locations for a specific campaign.
+
+ Use this tool to obtain the top geographical locations where a marketing campaign was opened. This can help in analyzing the reach and engagement of the campaign in different regions.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/locations".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": number_of_records, "offset": records_to_skip}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_recipients(
+ context: ToolContext,
+ campaign_unique_identifier: Annotated[str, "The unique identifier for the specific campaign whose recipients you want to retrieve."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of recipient records to return, between 1 and 1000. Default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdSentTo'."]:
+ """Retrieve information about campaign recipients.
+
+ Use this tool to obtain detailed information about recipients of a specific marketing campaign. It provides insights into who received the campaign.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/sent-to".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_recipient_info(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique ID for the campaign for which recipient information is requested. It should be in string format and is required to identify the specific campaign."], # noqa: E501
+ recipient_subscriber_hash: Annotated[str, "MD5 hash of the lowercase version of the recipient's email address."], # noqa: E501
+ excluded_fields: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdSentToId'."]:
+ """Get information about a specific campaign recipient.
+
+ Use this tool to retrieve details about a particular recipient of a Mailchimp marketing campaign. Provide the campaign ID and subscriber hash to access the information.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/sent-to/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, subscriber_hash=recipient_subscriber_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": excluded_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_sub_reports(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique ID of the parent campaign to retrieve sub-reports for."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdSubReportsId'."]:
+ """Retrieve sub-reports of a specific parent campaign.
+
+ Use this tool to get the reports of child campaigns associated with a particular parent campaign in Mailchimp. Useful for analyzing the performance of linked campaigns.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/sub-reports".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_unsubscribed_campaign_members(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the marketing campaign to retrieve unsubscribed members information."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return. Default is 10 and maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination, with a default value of 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdUnsubscribed'."]:
+ """Get details of members unsubscribed from a specific campaign.
+
+ Use this tool to retrieve detailed information about members who have unsubscribed from a specified marketing campaign.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/unsubscribed".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_unsubscribed_member_info(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the Mailchimp campaign."],
+ subscriber_email_hash: Annotated[str, "The MD5 hash of the lowercase version of the list member's email address for identification."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Specify which fields to return, using a comma-separated list with dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdUnsubscribedId'."]:
+ """Retrieve info on an unsubscribed list member from a campaign.
+
+ Use this tool to get information about a specific list member who has unsubscribed from a campaign in Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/unsubscribed/{subscriber_hash}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id, subscriber_hash=subscriber_email_hash), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_campaign_product_activity(
+ context: ToolContext,
+ campaign_unique_id: Annotated[str, "The unique identifier for the campaign whose product activity is being retrieved."], # noqa: E501
+ exclude_fields_from_response: Annotated[str | None, "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of records to return, between 1 and 1000. Defaults to 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ sort_results_by_field: Annotated[str | None, "Specify the field by which to sort the product activity results. Use dot notation for sub-object fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportsIdEcommerceProductActivity'."]: # noqa: E501
+ """Get breakdown of product activity for a campaign.
+
+ This tool retrieves the breakdown of product activity related to a specific marketing campaign from Mailchimp. It should be called when detailed ecommerce product performance data for a campaign is needed.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reports/{campaign_id}/ecommerce-product-activity".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), campaign_id=campaign_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_from_response, "count": number_of_records_to_return, "offset": pagination_offset, "sort_field": sort_results_by_field}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_available_templates(
+ context: ToolContext,
+ created_after_date: Annotated[str | None, "Retrieve templates created after a specific date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00)."] = None, # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ filter_by_category: Annotated[str | None, "Limit the results to templates that match a specific category."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of template records to return (1-1000). Default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0. Use for paginated responses."] = None, # noqa: E501
+ restrict_before_date_created: Annotated[str | None, "Restrict the response to templates created before the specified date in ISO 8601 format. For example: 2015-10-21T15:41:36+00:00."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Specify the order direction for sorted results ('asc' for ascending, 'desc' for descending)."] = None, # noqa: E501
+ sort_templates_by_field: Annotated[str | None, "Specify the field to sort templates by. Determines the sorting order of returned templates."] = None, # noqa: E501
+ template_content_type: Annotated[str | None, "Filter templates based on content structure. Use 'template' for legacy, 'multichannel' for new editor, or 'html' for code your own."] = None, # noqa: E501
+ template_creator_user: Annotated[str | None, "Specify the Mailchimp account user who created the template to filter results."] = None, # noqa: E501
+ template_folder_id: Annotated[str | None, "The unique ID for the folder containing templates to retrieve."] = None, # noqa: E501
+ template_type: Annotated[str | None, "Specify the template type to limit the results. This filters the email templates based on their type."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getTemplates'."]:
+ """Retrieve a list of available email templates.
+
+ Fetches and returns a list of all the email templates available in a Mailchimp account. Useful for managing and selecting templates for campaigns.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/templates".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset, "created_by": template_creator_user, "since_date_created": created_after_date, "before_date_created": restrict_before_date_created, "type": template_type, "category": filter_by_category, "folder_id": template_folder_id, "sort_field": sort_templates_by_field, "content_type": template_content_type, "sort_dir": sort_order_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def create_mailchimp_template(
+ context: ToolContext,
+ template_html_content: Annotated[str, "The raw HTML content for the template, supporting Mailchimp Template Language."], # noqa: E501
+ template_name: Annotated[str, "The name assigned to the new template. It should be descriptive for easy identification."], # noqa: E501
+ template_folder_id: Annotated[str | None, "The ID of the folder where the template will be stored. Ensure the folder exists in the Mailchimp account."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postTemplates'."]:
+ """Create a new Classic template in Mailchimp.
+
+ This tool is used to create a new Classic template in a Mailchimp account. It should be called when a user wants to add a new email template for marketing purposes.""" # noqa: E501
+ request_data: Any = {"name": template_name, "folder_id": template_folder_id, "html": template_html_content} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/templates".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_mailchimp_template_info(
+ context: ToolContext,
+ template_id: Annotated[str, "The unique identifier for the Mailchimp template to retrieve information about."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Specify a comma-separated list of fields to include in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getTemplatesId'."]:
+ """Retrieves detailed information about a specific Mailchimp template.
+
+ Use this tool to obtain information about a particular template in Mailchimp by providing the template ID. It is useful for retrieving template details when managing email marketing campaigns.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/templates/{template_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), template_id=template_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_email_template(
+ context: ToolContext,
+ template_html_content: Annotated[str, "The raw HTML for the template using Mailchimp's Template Language."], # noqa: E501
+ template_name: Annotated[str, "The name of the email template to update."],
+ template_unique_id: Annotated[str, "The unique identifier for the email template to be updated."], # noqa: E501
+ destination_folder_id: Annotated[str | None, "The ID of the folder where the template is currently located."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchTemplatesId'."]:
+ """Update the details of an existing email template.
+
+ Use this tool to update the name, HTML content, or folder ID of an existing email template in Mailchimp.""" # noqa: E501
+ request_data: Any = {"name": template_name, "folder_id": destination_folder_id, "html": template_html_content} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/templates/{template_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), template_id=template_unique_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_email_template(
+ context: ToolContext,
+ template_unique_id: Annotated[str, "The unique identifier for the email template to be deleted in Mailchimp."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteTemplatesId'."]:
+ """Delete a specific email template in Mailchimp.
+
+"""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/templates/{template_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), template_id=template_unique_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_template_editable_sections(
+ context: ToolContext,
+ template_unique_id: Annotated[str, "The unique identifier for the Mailchimp template to retrieve editable sections."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to include in the response. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getTemplatesIdDefaultContent'."]:
+ """Retrieve editable sections and default content of a template.
+
+ Use this tool to get the sections you can edit in a Mailchimp template, along with each section's default content. It is helpful for understanding which parts of a template can be customized.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/templates/{template_id}/default-content".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), template_id=template_unique_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_account_orders(
+ context: ToolContext,
+ exclude_order_fields: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ filter_by_outreach_id: Annotated[str | None, "Return orders associated with the specified outreach_id."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of order records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_to_campaign_id: Annotated[str | None, "Restrict results to orders with a specific campaign ID value."] = None, # noqa: E501
+ restrict_to_outreach_orders: Annotated[str | None, "Restrict results to orders that have an outreach attached, such as an email campaign or Facebook ad."] = None, # noqa: E501
+ specific_customer_id: Annotated[str | None, "Restrict results to orders made by a specific customer using their unique customer ID."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceOrders'."]:
+ """Retrieve information about an account's ecommerce orders.
+
+ Get details on all orders associated with a specific account, including order history and status.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/orders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_order_fields, "count": number_of_records_to_return, "offset": pagination_offset, "campaign_id": restrict_to_campaign_id, "outreach_id": filter_by_outreach_id, "customer_id": specific_customer_id, "has_outreach": restrict_to_outreach_orders}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_ecommerce_stores_info(
+ context: ToolContext,
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the response, using dot notation for nested objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return using dot notation for sub-objects."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "Specify the number of store records to return (10 to 1000)."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStores'."]:
+ """Retrieve information about all ecommerce stores in the account.
+
+ This tool fetches details of all ecommerce stores linked to the account, enabling insights into store data.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_new_ecommerce_store(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStores'."]:
+ """Add a new e-commerce store to your Mailchimp account.
+
+ Use this tool to add a new store to your Mailchimp account for managing e-commerce activities. Call this tool when you need to integrate a new store with Mailchimp.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDNEWECOMMERCESTORE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDNEWECOMMERCESTORE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDNEWECOMMERCESTORE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDNEWECOMMERCESTORE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_ecommerce_store_info(
+ context: ToolContext,
+ store_id: Annotated[str, "A unique identifier for the store to retrieve information about."],
+ excluded_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresId'."]:
+ """Retrieve detailed information about a specific eCommerce store.
+
+ Use this tool to get detailed information about a specific store in Mailchimp's eCommerce service. Call this when you need to access store data, such as name, domain, or other relevant attributes.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": excluded_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_ecommerce_store(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the store you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresId'."]:
+ """Update an e-commerce store's details.
+
+ This tool is used to update the information of an existing e-commerce store in Mailchimp. Call this when you need to modify store details, such as the store name or other attributes.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEECOMMERCESTORE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEECOMMERCESTORE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEECOMMERCESTORE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEECOMMERCESTORE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_ecommerce_store(
+ context: ToolContext,
+ store_identifier: Annotated[str, "The unique identifier for the store to be deleted."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresId'."]:
+ """Delete a store and its associated subresources.
+
+ Use this tool to delete an ecommerce store from Mailchimp Marketing. This action will remove the store along with any related Customers, Orders, Products, and Carts. Invoke this when a store needs to be completely removed from the system.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_store_carts_info(
+ context: ToolContext,
+ store_identifier: Annotated[str, "The unique identifier for the store to retrieve cart information."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for nested objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return, up to a maximum of 1000. Default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdCarts'."]:
+ """Retrieve information about a store's ecommerce carts.
+
+ Use this tool to get detailed information about carts within a specific store in the ecommerce system. Ideal for understanding cart statuses, contents, and customer interactions.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_cart_to_store(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the ecommerce store where the new cart will be added. This is essential to specify the target store. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdCarts'."]:
+ """Add a new cart to an ecommerce store.
+
+ This tool adds a new cart to a specified ecommerce store using Mailchimp Marketing. It should be called when a user needs to create a new cart for a store.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDCARTTOSTORE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDCARTTOSTORE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDCARTTOSTORE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/carts".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDCARTTOSTORE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_cart_info(
+ context: ToolContext,
+ cart_identifier: Annotated[str, "The unique identifier for the cart in the ecommerce store."],
+ store_identifier: Annotated[str, "The unique identifier for the store. Use this to specify which store's cart information to retrieve."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for nested objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Specify a comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdCartsId'."]:
+ """Fetch information about a specific ecommerce cart.
+
+ Use this tool to retrieve detailed information about a specific cart in an ecommerce store. It's useful for scenarios where you need to understand the contents or status of a cart identified by store and cart IDs.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, cart_id=cart_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_cart(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_id: Annotated[str | None, "The unique identifier for the store where the cart is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ cart_identifier: Annotated[str | None, "The unique identifier for the cart. Used to specify which cart to update in the e-commerce store. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdCartsId'."]:
+ """Update a specific cart in an e-commerce store.
+
+ This tool updates a specified cart within a given e-commerce store using the Mailchimp Marketing API. Use it to modify cart details like items, quantities, or any other attributes available. Ideal for scenarios involving cart adjustments before customer checkout.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATECART"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_id:
+ missing_params.append(("store_id", "path"))
+ if not cart_identifier:
+ missing_params.append(("cart_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATECART"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATECART"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, cart_id=cart_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATECART"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_cart(
+ context: ToolContext,
+ cart_id: Annotated[str, "The ID for the cart to be deleted from the store."],
+ store_identifier: Annotated[str, "The unique identifier for the ecommerce store from which the cart will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdCartsId'."]:
+ """Deletes a specific cart from an ecommerce store.
+
+ Use this tool to delete a cart from a specified store in the ecommerce system. It should be called when you need to remove a cart by providing a specific store and cart ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, cart_id=cart_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_cart_line_items_info(
+ context: ToolContext,
+ cart_id: Annotated[str, "The unique identifier for the cart to retrieve line items for."],
+ store_identifier: Annotated[str, "The unique identifier for the store containing the cart."],
+ exclude_fields: Annotated[str | None, "Specify fields to exclude from the response. Use a comma-separated list with dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Defaults to 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "The number of cart line items to return, from 1 to 1000. Default is 10."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdCartsIdLines'."]: # noqa: E501
+ """Retrieve information about a cart's line items.
+
+ Use this tool to get details about the items in a specific cart within an ecommerce store. It provides insights into products added to a cart.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}/lines".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, cart_id=cart_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_line_item_to_cart(
+ context: ToolContext,
+ cart_identifier: Annotated[str, "The unique identifier for the cart to which the line item will be added."], # noqa: E501
+ cart_line_item_identifier: Annotated[str, "A unique identifier for the cart line item."],
+ line_item_price: Annotated[float, "The monetary price for the line item being added to the cart. Must be a numeric value."], # noqa: E501
+ line_item_quantity: Annotated[int, "The number of units for the specified product variant in the cart."], # noqa: E501
+ product_id: Annotated[str, "A unique identifier for the product to be added to the cart line item."], # noqa: E501
+ product_variant_id: Annotated[str, "A unique identifier for the product variant to be added to the cart. This is necessary to specify which variant of the product is being added."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the store. This is necessary to specify which store's cart will be updated."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdCartsIdLines'."]: # noqa: E501
+ """Add a new line item to an existing shopping cart.
+
+ Use this tool to add a product to a specific cart by specifying the store and cart IDs. This enables updating shopping carts with new items in an e-commerce context.""" # noqa: E501
+ request_data: Any = {"id": cart_line_item_identifier, "product_id": product_id, "product_variant_id": product_variant_id, "quantity": line_item_quantity, "price": line_item_price} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}/lines".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, cart_id=cart_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def retrieve_cart_line_item_info(
+ context: ToolContext,
+ cart_identifier: Annotated[str, "The unique identifier for the cart. Required to retrieve specific cart line item information."], # noqa: E501
+ cart_line_item_id: Annotated[str, "The ID for the line item in a specific cart. Used to identify which item details to retrieve."], # noqa: E501
+ store_identifier: Annotated[str, "Unique identifier for the store. Use this to specify which store's cart line item you want to retrieve."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return for the cart line item. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdCartsIdLinesId'."]: # noqa: E501
+ """Get information about a specific cart line item.
+
+ Call this tool to obtain details about a specific item in an e-commerce cart, such as product details and quantity.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, cart_id=cart_identifier, line_id=cart_line_item_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_cart_line_item(
+ context: ToolContext,
+ cart_id: Annotated[str, "The unique identifier for the cart."],
+ cart_line_item_id: Annotated[str, "The unique identifier for the line item within the cart to be updated."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the e-commerce store. Essential for specifying which store's cart line item to update."], # noqa: E501
+ cart_line_item_price: Annotated[float | None, "The price of a cart line item to be updated."] = None, # noqa: E501
+ cart_line_item_quantity: Annotated[int | None, "The quantity of the cart line item to update."] = None, # noqa: E501
+ product_identifier: Annotated[str | None, "A unique identifier for the product associated with the cart line item."] = None, # noqa: E501
+ product_variant_identifier: Annotated[str | None, "A unique identifier for the product variant associated with the cart line item. Required to specify which variant to update."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdCartsIdLinesId'."]: # noqa: E501
+ """Update a specific cart line item in Mailchimp.
+
+ Use this tool to modify an existing cart line item in a specified e-commerce store within Mailchimp. This can be used to adjust item details such as quantity or other attributes.""" # noqa: E501
+ request_data: Any = {"product_id": product_identifier, "product_variant_id": product_variant_identifier, "quantity": cart_line_item_quantity, "price": cart_line_item_price} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, cart_id=cart_id, line_id=cart_line_item_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_cart_line_item(
+ context: ToolContext,
+ cart_identifier: Annotated[str, "The unique identifier for the cart in the eCommerce store."],
+ line_item_id: Annotated[str, "ID for the line item in the cart to be deleted."],
+ store_identifier: Annotated[str, "The unique identifier for the store from which the cart line item will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdCartsLinesId'."]: # noqa: E501
+ """Delete a specific cart line item.
+
+ Use this tool to delete a particular line item from a cart in an eCommerce store. Call this tool when you need to remove an item from a customer's shopping cart.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, cart_id=cart_identifier, line_id=line_item_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_store_customers_info(
+ context: ToolContext,
+ store_identifier: Annotated[str, "The unique identifier for the e-commerce store to retrieve customer information."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated fields to exclude in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ filter_by_email_address: Annotated[str | None, "Restrict the response to customers matching the specified email address."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of customer records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdCustomers'."]:
+ """Retrieve information about a store's customers.
+
+ Use this tool to get detailed information about the customers of a specific e-commerce store. Ideal for accessing customer data to analyze or manage store interactions.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/customers".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": number_of_records_to_return, "offset": pagination_offset, "email_address": filter_by_email_address}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_customer_to_store(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the ecommerce store where the customer will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdCustomers'."]:
+ """Add a new customer to an ecommerce store.
+
+ This tool adds a new customer to a specified ecommerce store. It should be called when a new customer needs to be registered in the store's system.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDCUSTOMERTOSTORE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDCUSTOMERTOSTORE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDCUSTOMERTOSTORE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/customers".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDCUSTOMERTOSTORE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_customer_info(
+ context: ToolContext,
+ customer_id: Annotated[str, "The unique identifier for a customer in a specific store. Required to fetch customer details."], # noqa: E501
+ store_id: Annotated[str, "The unique identifier for the eCommerce store."],
+ fields_to_exclude: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "A comma-separated list of fields to return for the customer data. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdCustomersId'."]:
+ """Retrieve specific customer information from an eCommerce store.
+
+ Use this tool to get detailed information about a specific customer from an eCommerce store using their customer ID and store ID. Ideal for checking customer profiles, transaction histories, and personal information tied to their account.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/customers/{customer_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, customer_id=customer_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_or_update_customer_in_store(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the eCommerce store where the customer will be added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ customer_identifier: Annotated[str | None, "The unique identifier for the customer in the specified store. This ID is necessary for adding or updating customer details. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'putEcommerceStoresIdCustomersId'."]:
+ """Add or update a customer in an eCommerce store.
+
+ Use this tool to add a new customer or update an existing customer's information in a specific eCommerce store using Mailchimp Marketing.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDORUPDATECUSTOMERINSTORE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not customer_identifier:
+ missing_params.append(("customer_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDORUPDATECUSTOMERINSTORE"] + "\n```" # noqa: E501
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDORUPDATECUSTOMERINSTORE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/customers/{customer_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, customer_id=customer_identifier), # noqa: E501 # noqa: UP032
+ method="PUT",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDORUPDATECUSTOMERINSTORE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_customer_info(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the ecommerce store where the customer resides. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ customer_identifier: Annotated[str | None, "The unique identifier for a customer in a specific store. Required to update customer information. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdCustomersId'."]: # noqa: E501
+ """Update a customer's information in an ecommerce store.
+
+ Use this tool to update the information of a customer within a specific ecommerce store. Ideal for changes in customer details such as address, contact info, or other personal data.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATECUSTOMERINFO"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not customer_identifier:
+ missing_params.append(("customer_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATECUSTOMERINFO"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATECUSTOMERINFO"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/customers/{customer_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, customer_id=customer_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATECUSTOMERINFO"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_store_customer(
+ context: ToolContext,
+ customer_identifier: Annotated[str, "The unique identifier for the customer to be deleted from the store. This ID is used to specify which customer's records should be removed."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the ecommerce store from which the customer will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdCustomersId'."]: # noqa: E501
+ """Delete a customer from an ecommerce store.
+
+ Call this tool to remove a specific customer from a given ecommerce store. Use when you need to manage customer records by deleting them from a store's database.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/customers/{customer_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, customer_id=customer_identifier), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_store_promo_rules(
+ context: ToolContext,
+ store_identifier: Annotated[str, "The unique identifier for the store to retrieve promo rules from."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination, with a default value of 0."] = None, # noqa: E501
+ records_to_return: Annotated[str | None, "Specify the number of promo rule records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdPromorules'."]:
+ """Retrieve promo rules for a specified store.
+
+ Use this tool to get detailed information about the promotional rules set up for a specific e-commerce store using its ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_store_promo_rule(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_id: Annotated[str | None, "The unique identifier for the store where the promo rule will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdPromorules'."]:
+ """Add a new promo rule to an e-commerce store on Mailchimp.
+
+ This tool is used to add a new promotional rule to a specific e-commerce store within Mailchimp. It is ideal for automating the management of store promotions.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDSTOREPROMORULE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_id:
+ missing_params.append(("store_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDSTOREPROMORULE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDSTOREPROMORULE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDSTOREPROMORULE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_promo_rule_info(
+ context: ToolContext,
+ promo_rule_id: Annotated[str, "The unique identifier for the promo rule in the store. Required to fetch specific rule details."], # noqa: E501
+ store_id: Annotated[str, "The unique identifier for the ecommerce store. Required to fetch promo rule details."], # noqa: E501
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude from the promo rule data. Use dot notation to reference sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of specific fields to return using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdPromorulesId'."]: # noqa: E501
+ """Retrieve information about a specific promo rule in an ecommerce store.
+
+"""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, promo_rule_id=promo_rule_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_promo_rule(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "Specify the unique identifier of the e-commerce store where the promo rule will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ promo_rule_identifier: Annotated[str | None, "The unique identifier for the promotional rule within the store. This is required to specify which promo rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdPromorulesId'."]: # noqa: E501
+ """Update a promotional rule in an e-commerce store.
+
+ Use this tool to modify details of an existing promotional rule in a specified e-commerce store. It should be called when you need to update the conditions or discounts associated with a promo rule.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEPROMORULE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not promo_rule_identifier:
+ missing_params.append(("promo_rule_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEPROMORULE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEPROMORULE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, promo_rule_id=promo_rule_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEPROMORULE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_promo_rule_from_store(
+ context: ToolContext,
+ promo_rule_id: Annotated[str, "The unique identifier for the promo rule to be deleted from the store."], # noqa: E501
+ store_id: Annotated[str, "The unique identifier for the ecommerce store from which the promo rule will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdPromorulesId'."]: # noqa: E501
+ """Delete a promo rule from a specified ecommerce store.
+
+ Use this tool to remove a promotional rule from an ecommerce store on Mailchimp. This action is irreversible and will delete the specified promo rule from the store identified by the store ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, promo_rule_id=promo_rule_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_store_promo_codes(
+ context: ToolContext,
+ promo_rule_id: Annotated[str, "The unique identifier for the promotion rule of a store to fetch promo codes."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the store to get promo codes from. Required to specify which store's promo codes to retrieve."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Specify a comma-separated list of fields to exclude from the returned data. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of promo code records to return. Default is 10, with a maximum of 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination purposes. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdPromocodes'."]:
+ """Retrieve information about promo codes for a specific store.
+
+ Use this tool to get detailed information about promo codes for a given store, which can help in managing promotions and discounts.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), promo_rule_id=promo_rule_id, store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_promo_code_to_store(
+ context: ToolContext,
+ promo_code: Annotated[str, "The discount code for the promotion. It must be a UTF-8 string, with a maximum length of 50 characters."], # noqa: E501
+ promo_code_identifier: Annotated[str, "A unique identifier for the promo code. Must be UTF-8, max length 50."], # noqa: E501
+ promo_rule_identifier: Annotated[str, "The ID for the promotional rule associated with the store."], # noqa: E501
+ promotion_redemption_url: Annotated[str, "The URL used in the promotion campaign. Must be UTF-8, max length 2000 characters."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the ecommerce store where the promo code will be added."], # noqa: E501
+ is_promo_code_enabled: Annotated[bool | None, "Specifies if the promo code is enabled. Use true to enable, false to disable."] = None, # noqa: E501
+ promo_code_usage_count: Annotated[int | None, "Number of times the promo code has been used. This integer value helps track the utilization of the promo code."] = None, # noqa: E501
+ promotion_creation_datetime: Annotated[str | None, "The date and time the promotion was created, in ISO 8601 format."] = None, # noqa: E501
+ promotion_updated_datetime: Annotated[str | None, "The date and time the promotion was last updated, in ISO 8601 format."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdPromocodes'."]:
+ """Add a new promo code to an ecommerce store.
+
+ Use this tool to add a new promotional code to a specific store in the ecommerce platform. This is useful for managing discounts and promotions within the store.""" # noqa: E501
+ request_data: Any = {"id": promo_code_identifier, "code": promo_code, "redemption_url": promotion_redemption_url, "usage_count": promo_code_usage_count, "enabled": is_promo_code_enabled, "created_at_foreign": promotion_creation_datetime, "updated_at_foreign": promotion_updated_datetime} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, promo_rule_id=promo_rule_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_promo_code_info(
+ context: ToolContext,
+ promo_code_id: Annotated[str, "The unique identifier for the promo code associated with a store."], # noqa: E501
+ promo_rule_id: Annotated[str, "The unique identifier for the promo rule of a store. This is required to fetch specific promo code information."], # noqa: E501
+ store_id: Annotated[str, "The unique identifier for the store. Required to specify which store's promo code information to retrieve."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdPromocodesId'."]: # noqa: E501
+ """Retrieve details of a specific promo code.
+
+ Use this tool to get detailed information about a specific promo code associated with a particular store in the Mailchimp Marketing service.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, promo_rule_id=promo_rule_id, promo_code_id=promo_code_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_promo_code(
+ context: ToolContext,
+ promo_code_identifier: Annotated[str, "The unique identifier for the promo code of a store."],
+ promo_rule_identifier: Annotated[str, "The identifier for the promo rule in a store. Used to specify which promotional rule to update."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the eCommerce store in Mailchimp."],
+ discount_code: Annotated[str | None, "The discount code for the promo. Must be UTF-8 and up to 50 characters."] = None, # noqa: E501
+ is_promo_code_enabled: Annotated[bool | None, "Set to true to enable the promo code, or false to disable it."] = None, # noqa: E501
+ promo_code_usage_count: Annotated[int | None, "Specifies how many times the promo code has been used. Accepts an integer value."] = None, # noqa: E501
+ promotion_created_at: Annotated[str | None, "The promotion creation date and time in ISO 8601 format."] = None, # noqa: E501
+ promotion_redemption_url: Annotated[str | None, "The URL for the promotion campaign. Must be UTF-8, max 2000 characters."] = None, # noqa: E501
+ promotion_update_timestamp: Annotated[str | None, "The timestamp when the promotion was updated, in ISO 8601 format. This indicates the last update time of the promo code details."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdPromocodesId'."]: # noqa: E501
+ """Update details of a specific promo code.
+
+ Use this tool to update the details of a specific promo code in an eCommerce store using Mailchimp. It should be called when you need to modify existing promotional codes, such as changing the discount or expiration date.""" # noqa: E501
+ request_data: Any = {"code": discount_code, "redemption_url": promotion_redemption_url, "usage_count": promo_code_usage_count, "enabled": is_promo_code_enabled, "created_at_foreign": promotion_created_at, "updated_at_foreign": promotion_update_timestamp} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, promo_rule_id=promo_rule_identifier, promo_code_id=promo_code_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_store_promo_code(
+ context: ToolContext,
+ promo_code_id: Annotated[str, "The ID of the promo code to be deleted from the store."],
+ promo_rule_id: Annotated[str, "The unique identifier for the promo rule of a store, used to specify which promo rule the code belongs to."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the store from which the promo code will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdPromocodesId'."]: # noqa: E501
+ """Delete a promo code from an e-commerce store.
+
+ Use this tool to delete a specific promo code from a designated e-commerce store in Mailchimp Marketing. It is useful when you want to manage or clean up promotional offers by removing existing promo codes.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, promo_rule_id=promo_rule_id, promo_code_id=promo_code_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_store_orders_info(
+ context: ToolContext,
+ store_identifier: Annotated[str, "The unique identifier for the store whose orders information is to be retrieved."], # noqa: E501
+ exclude_order_fields: Annotated[str | None, "Comma-separated list of order fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+ filter_by_customer_id: Annotated[str | None, "Restrict results to orders made by a specific customer using their unique customer ID."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return, between 1 and 1000, with a default of 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ restrict_to_campaign_id: Annotated[str | None, "Restrict results to orders with the specified `campaign_id`."] = None, # noqa: E501
+ restrict_to_outreach_orders: Annotated[str | None, "Indicate whether to restrict results to orders with an outreach attached, such as an email campaign or Facebook ad. Accepts 'true' or 'false'."] = None, # noqa: E501
+ specific_outreach_id: Annotated[str | None, "Restrict results to orders with a specific outreach ID."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdOrders'."]:
+ """Retrieve information about a store's orders via Mailchimp.
+
+ Use this tool to get detailed information about the orders of a specified store from Mailchimp's ecommerce platform.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/orders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_order_fields, "count": number_of_records_to_return, "offset": pagination_offset, "customer_id": filter_by_customer_id, "has_outreach": restrict_to_outreach_orders, "campaign_id": restrict_to_campaign_id, "outreach_id": specific_outreach_id}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_order_to_store(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the store where the order will be added. This should be a string value that accurately corresponds to an existing store in the system. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdOrders'."]:
+ """Add a new order to an ecommerce store.
+
+ This tool adds a new order to a specified store using the store's ID. It should be called when you need to record a new purchase or transaction in your ecommerce system.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDORDERTOSTORE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDORDERTOSTORE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDORDERTOSTORE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/orders".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDORDERTOSTORE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_specific_order_info(
+ context: ToolContext,
+ order_id: Annotated[str, "The unique identifier for the order in a store. It is required to retrieve specific order details."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the store. Required to fetch order information."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdOrdersId'."]:
+ """Retrieve information about a specific order in a store.
+
+ Use this tool to obtain details about a specific order from an e-commerce store. It should be called when needing to access order information using the order ID and store ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, order_id=order_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_ecommerce_order(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the store in which the order is being added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ order_identifier: Annotated[str | None, "The unique identifier for the order in the store. Used to specify which order to update or add. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'putEcommerceStoresIdOrdersId'."]:
+ """Add or update an order in an ecommerce store.
+
+ Use this tool to either add a new order or update an existing order within an ecommerce store in Mailchimp Marketing. This tool is suitable when order details need to be adjusted or fresh orders are being added.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEORDER"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not order_identifier:
+ missing_params.append(("order_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEORDER"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEORDER"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, order_id=order_identifier), # noqa: E501 # noqa: UP032
+ method="PUT",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEORDER"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_order_mailchimp(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the store in which the order is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ order_id: Annotated[str | None, "The unique identifier for the order in the store that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdOrdersId'."]:
+ """Update a specific order in Mailchimp's e-commerce store.
+
+ Use this tool to modify order details in a specified Mailchimp e-commerce store. It updates the order data based on provided criteria and returns the updated order status.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEORDERMAILCHIMP"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not order_id:
+ missing_params.append(("order_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEORDERMAILCHIMP"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEORDERMAILCHIMP"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, order_id=order_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEORDERMAILCHIMP"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_order_in_ecommerce_store(
+ context: ToolContext,
+ ecommerce_store_id: Annotated[str, "The unique identifier for the eCommerce store from which the order will be deleted."], # noqa: E501
+ order_id: Annotated[str, "The unique identifier for the order to delete within the store."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdOrdersId'."]:
+ """Delete an order from an eCommerce store.
+
+ Use this tool to delete a specific order from an eCommerce store in Mailchimp by providing the store ID and order ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=ecommerce_store_id, order_id=order_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_order_line_items(
+ context: ToolContext,
+ order_id: Annotated[str, "The unique identifier for the order within the store. Required to specify which order's line items to retrieve."], # noqa: E501
+ store_id: Annotated[str, "The unique identifier for the store. Used to specify which store's order line items to retrieve."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of line item records to return, between 1 and 1000. Default is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination, default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdOrdersIdLines'."]: # noqa: E501
+ """Retrieve information about order line items.
+
+ Use this tool to get detailed information about line items in a specific order from an e-commerce store linked to Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}/lines".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, order_id=order_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_order_line_item(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the store where the order is placed. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ order_id: Annotated[str | None, "The unique identifier for the order in the store, used to specify which order to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdOrdersIdLines'."]: # noqa: E501
+ """Add a new line item to an existing order.
+
+ Use this tool to add a new product line to an existing order in an ecommerce store. Ideal for updating orders with additional items, changing quantities, or modifying product details.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDORDERLINEITEM"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not order_id:
+ missing_params.append(("order_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDORDERLINEITEM"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDORDERLINEITEM"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}/lines".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, order_id=order_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDORDERLINEITEM"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_specific_order_line_item_info(
+ context: ToolContext,
+ order_id: Annotated[str, "The unique identifier for the order within a store. Required to fetch details of the specific order line item."], # noqa: E501
+ order_line_item_id: Annotated[str, "The unique identifier for the line item in the order."],
+ store_identifier: Annotated[str, "The unique identifier for the store. This is required to specify which store's data to retrieve."], # noqa: E501
+ exclude_fields: Annotated[str | None, "A comma-separated list of specific fields to exclude from the response. Use dot notation for sub-object fields."] = None, # noqa: E501
+ return_fields: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdOrdersIdLinesId'."]: # noqa: E501
+ """Get details about a specific order line item.
+
+ Use this tool to retrieve information about a specific order line item from an e-commerce store in Mailchimp. Useful for obtaining order details such as product name, quantity, price, etc., for a particular order line.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, order_id=order_id, line_id=order_line_item_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_order_line_item(
+ context: ToolContext,
+ line_item_id: Annotated[str, "The unique identifier for the line item within an order in a store."], # noqa: E501
+ order_id: Annotated[str, "The unique identifier for the order within the store. Required to specify which order is being updated."], # noqa: E501
+ store_identifier: Annotated[str, "Unique identifier for the store where the order was placed."],
+ line_item_discount_amount: Annotated[float | None, "The total discount amount applied to this line item in the order. Provide as a numerical value."] = None, # noqa: E501
+ order_line_item_price: Annotated[float | None, "Specify the updated price for the order line item. This should be a numerical value reflecting the new cost of the item."] = None, # noqa: E501
+ order_line_item_quantity: Annotated[int | None, "Specify the quantity of the order line item to be updated."] = None, # noqa: E501
+ product_identifier: Annotated[str | None, "A unique identifier for the product associated with the order line item."] = None, # noqa: E501
+ product_variant_id: Annotated[str | None, "A unique identifier for the product variant associated with the order line item. This is required to specify the variant of the product being referenced."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdOrdersIdLinesId'."]: # noqa: E501
+ """Update a specific order line item.
+
+ Use this tool to update details of a specific order line item in an e-commerce store. Useful for modifying existing order line items with new information or adjustments.""" # noqa: E501
+ request_data: Any = {"product_id": product_identifier, "product_variant_id": product_variant_id, "quantity": order_line_item_quantity, "price": order_line_item_price, "discount": line_item_discount_amount} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, order_id=order_id, line_id=line_item_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_order_line_item(
+ context: ToolContext,
+ order_id: Annotated[str, "The unique identifier for the order within a store. This is required to delete a line item from the specified order."], # noqa: E501
+ order_line_item_id: Annotated[str, "The unique identifier for the line item of an order to be deleted."], # noqa: E501
+ store_id: Annotated[str, "Unique identifier for the store from which the order line item will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdOrdersIdLinesId'."]: # noqa: E501
+ """Delete a specific order line item.
+
+ Call this tool to delete a specific line item from an order within an e-commerce store in Mailchimp. The tool should be used when a user needs to remove an item from an order completely.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, order_id=order_id, line_id=order_line_item_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_store_products_info(
+ context: ToolContext,
+ store_identifier: Annotated[str, "The unique identifier for the store whose product information is being retrieved."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of product records to return, from 1 to 1000. The default value is 10."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ return_fields_list: Annotated[str | None, "A comma-separated list of specific fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdProducts'."]:
+ """Get information about a store's products from Mailchimp.
+
+ This tool retrieves detailed information about products in a specified ecommerce store using Mailchimp's marketing API. It should be called when information about a store's inventory is needed.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": return_fields_list, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_product_to_store(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_id: Annotated[str | None, "The unique identifier of the store where the product will be added. This is required to specify the target store. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdProducts'."]:
+ """Add a new product to a Mailchimp store.
+
+ Use this tool to add a new product to a specific store in Mailchimp. This is useful for updating store inventories or launching new products.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDPRODUCTTOSTORE"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_id:
+ missing_params.append(("store_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDPRODUCTTOSTORE"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDPRODUCTTOSTORE"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/products".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDPRODUCTTOSTORE"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_product_info(
+ context: ToolContext,
+ product_id: Annotated[str, "The unique identifier for the product within a store. This ID is required to fetch specific product details."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the store from which to retrieve the product information."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "Comma-separated fields to exclude in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdProductsId'."]:
+ """Get information about a specific product from an ecommerce store.
+
+ Use this tool to retrieve detailed information on a specific product from a specified ecommerce store, identified by store and product IDs.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_product_info(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The identifier for the specific store whose product details are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ product_identifier: Annotated[str | None, "The unique identifier for the product within a store. Required for updating product details. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdProductsId'."]: # noqa: E501
+ """Update details of a specific product in a store.
+
+ This tool updates information for a specific product in an e-commerce store. Call this tool when you need to modify product details, such as name, description, or price, for a particular store.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEPRODUCTINFO"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not product_identifier:
+ missing_params.append(("product_identifier", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEPRODUCTINFO"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEPRODUCTINFO"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_identifier), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEPRODUCTINFO"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_ecommerce_product(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier of the store to update the product in. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ product_id: Annotated[str | None, "The unique identifier for the product within a store. This is used to specify which product needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'putEcommerceStoresIdProductsId'."]:
+ """Update a specific product in an ecommerce store.
+
+ Use this tool to update details of a specific product in an ecommerce store. It is useful when you need to modify product information such as pricing, inventory, or descriptions.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEPRODUCT"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not product_id:
+ missing_params.append(("product_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEPRODUCT"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEPRODUCT"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_id), # noqa: E501 # noqa: UP032
+ method="PUT",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEECOMMERCEPRODUCT"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_ecommerce_product(
+ context: ToolContext,
+ product_id: Annotated[str, "The unique identifier for the product to delete from a store."],
+ store_id: Annotated[str, "The unique identifier of the eCommerce store from which the product will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdProductsId'."]: # noqa: E501
+ """Delete a product from an eCommerce store.
+
+ Use this tool to delete a specific product from a given eCommerce store in Mailchimp. It should be called when you want to remove a product based on its store and product ID.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, product_id=product_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_product_variants_info(
+ context: ToolContext,
+ product_identifier: Annotated[str, "The unique identifier for the product within the store."],
+ store_id: Annotated[str, "The unique identifier for the store. Required to fetch product variant data."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "Specify fields to exclude using a comma-separated list. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of product variant records to return, default is 10, max is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdProductsIdVariants'."]: # noqa: E501
+ """Retrieve information on product variants from a store.
+
+ Use this tool to obtain detailed information about the variants of a specific product in an e-commerce store. Ideal for cases where users need to know different versions or options available for a product.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/variants".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, product_id=product_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_product_variant_mailchimp(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the store where the product variant will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ product_id: Annotated[str | None, "The ID for the product within a store to which a new variant will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdProductsIdVariants'."]: # noqa: E501
+ """Add a new variant to an existing product in Mailchimp.
+
+ This tool is used to add a new variant to an existing product within a specific store on Mailchimp. Use this when you need to add, update, or expand product options such as sizes or colors within your Mailchimp store.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["ADDPRODUCTVARIANTMAILCHIMP"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not product_id:
+ missing_params.append(("product_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["ADDPRODUCTVARIANTMAILCHIMP"] + "\n```" # noqa: E501
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["ADDPRODUCTVARIANTMAILCHIMP"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/variants".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["ADDPRODUCTVARIANTMAILCHIMP"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_product_variant_info(
+ context: ToolContext,
+ product_id: Annotated[str, "The ID of the product in the specified store. Required to retrieve variant details."], # noqa: E501
+ product_variant_id: Annotated[str, "The unique identifier for the product variant in the store."], # noqa: E501
+ store_id: Annotated[str, "The unique identifier for the store to query the product variant details."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of product variant fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdProductsIdVariantsId'."]: # noqa: E501
+ """Retrieve information on a specific product variant.
+
+ Call this tool to get detailed information about a specific product variant in an e-commerce store. Useful for fetching variant details such as size, color, price, or stock status from a specified store's product.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, product_id=product_id, variant_id=product_variant_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_product_variant(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "The unique identifier for the ecommerce store. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ product_identifier: Annotated[str | None, "The unique identifier for the product in the store. This ID is used to specify which product's variant is being added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ product_variant_id: Annotated[str | None, "The unique identifier for the product variant to be updated or added. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'putEcommerceStoresIdProductsIdVariantsId'."]: # noqa: E501
+ """Add or update a product variant in an ecommerce store.
+
+ Use this tool to add a new product variant or update an existing one in a specified ecommerce store.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["UPDATEPRODUCTVARIANT"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not product_identifier:
+ missing_params.append(("product_identifier", "path"))
+ if not product_variant_id:
+ missing_params.append(("product_variant_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["UPDATEPRODUCTVARIANT"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["UPDATEPRODUCTVARIANT"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_identifier, variant_id=product_variant_id), # noqa: E501 # noqa: UP032
+ method="PUT",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["UPDATEPRODUCTVARIANT"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def modify_product_variant(
+ context: ToolContext,
+ mode: Annotated[
+ ToolMode,
+ "Operation mode: 'get_request_schema' returns the OpenAPI spec "
+ "for the request body, 'execute' performs the actual operation",
+ ],
+ store_identifier: Annotated[str | None, "A unique identifier for the store where the product variant will be updated. Must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ product_identifier: Annotated[str | None, "The unique identifier for a product in a store. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ product_variant_id: Annotated[str | None, "The ID for the product variant to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'."] = None, # noqa: E501
+
+ request_body: Annotated[
+ str | None,
+ "Stringified JSON representing the request body. Required when "
+ "mode is 'execute', ignored when mode is 'get_request_schema'",
+ ] = None,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdProductsIdVariantsId'."]: # noqa: E501
+ """Update a product variant in an e-commerce store.
+
+ Use this tool to update the details of a specific product variant in a designated e-commerce store. This is useful for changing attributes of a variant, such as pricing, stock level, or other details.
+
+ Note: Understanding the request schema is necessary to properly create
+ the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
+
+ Modes:
+ - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
+ already have it. Do NOT call repeatedly if you already received
+ the schema.
+ - EXECUTE: Performs the operation with the provided request body
+ JSON.\n Note: You must also provide the required path parameters when executing.
+
+ If you need the schema, call with mode='get_request_schema' ONCE, then execute.
+ """ # noqa: E501
+ if mode == ToolMode.GET_REQUEST_SCHEMA:
+ return {
+ "request_body_schema": REQUEST_BODY_SCHEMAS["MODIFYPRODUCTVARIANT"],
+ "instructions": (
+ "Use the request_body_schema to construct a valid JSON object. "
+ "Once you have populated the object following the schema "
+ "structure and requirements, call this tool again with "
+ "mode='execute' and the stringified JSON as the "
+ "request_body parameter along with the required path parameters. "
+ "Do NOT call the schema mode again - you already have "
+ "the schema now."
+ ),
+ }
+
+ # Mode is EXECUTE - validate parameters
+ # Validate required parameters
+ missing_params = []
+ if not store_identifier:
+ missing_params.append(("store_identifier", "path"))
+ if not product_identifier:
+ missing_params.append(("product_identifier", "path"))
+ if not product_variant_id:
+ missing_params.append(("product_variant_id", "path"))
+
+ if missing_params:
+ param_names = [p[0] for p in missing_params]
+ param_details = ", ".join(
+ [f"{p[0]} ({p[1]})" for p in missing_params]
+ )
+ raise RetryableToolError(
+ message=f"Missing required parameters: {param_names}",
+ developer_message=(
+ f"Required parameters validation failed: {param_details}"
+ ),
+ additional_prompt_content=(
+ f"The following required parameters are missing: "
+ f"{param_details}. Please call this tool again with all "
+ "required parameters."
+ ),
+ )
+
+
+ # Validate request body is provided (not None or empty string)
+ # Note: Empty objects like {} are allowed - schema validation will check if valid
+ if request_body is None or request_body.strip() == "":
+ raise RetryableToolError(
+ message="Request body is required when mode is 'execute'",
+ developer_message="The request_body parameter was null or empty string",
+ additional_prompt_content=(
+ "The request body is required to perform this operation. "
+ "Use the schema below to construct a valid JSON object, "
+ "then call this tool again in execute mode with the "
+ "stringified JSON as the request_body parameter.\n\n"
+ "Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["MODIFYPRODUCTVARIANT"] + "\n```"
+ ),
+ )
+
+ # Parse JSON
+ try:
+ request_data = json.loads(request_body)
+ except json.JSONDecodeError as e:
+ raise RetryableToolError(
+ message=f"Invalid JSON in request body: {e!s}",
+ developer_message=f"JSON parsing failed: {e!s}",
+ additional_prompt_content=(
+ f"The request body contains invalid JSON. Error: {e!s}\n\n"
+ "Please provide a valid JSON string that matches the schema "
+ "below, then call this tool again in execute mode.\n\n"
+ "Schema:\n\n```json\n"+ REQUEST_BODY_SCHEMAS["MODIFYPRODUCTVARIANT"] + "\n```"
+ ),
+ ) from e
+
+ response = await make_request_with_schema_validation(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_identifier, variant_id=product_variant_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ request_data=request_data,
+ schema=REQUEST_BODY_SCHEMAS["MODIFYPRODUCTVARIANT"],
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_product_variant(
+ context: ToolContext,
+ product_id: Annotated[str, "The unique identifier for the product within a store to which the variant belongs."], # noqa: E501
+ product_variant_id: Annotated[str, "The identifier for the product variant to be deleted from the store."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the store from which the product variant will be deleted."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdProductsIdVariantsId'."]: # noqa: E501
+ """Delete a product variant from an ecommerce store.
+
+ Use this tool to delete a specific product variant in an ecommerce store on Mailchimp. Ideal for managing product inventories by removing obsolete or discontinued variants.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_id, variant_id=product_variant_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_product_images(
+ context: ToolContext,
+ product_identifier: Annotated[str, "The unique identifier for a product in a specific store. Required to retrieve product image details."], # noqa: E501
+ store_id: Annotated[str, "The unique identifier for the e-commerce store."],
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude from the response using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of product image records to return, ranging from 1 to 1000. Defaults to 10 if not provided."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdProductsIdImages'."]: # noqa: E501
+ """Retrieve information about a product's images.
+
+ Call this tool to obtain details about images associated with a specific product in an e-commerce store.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/images".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, product_id=product_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_product_image(
+ context: ToolContext,
+ product_id: Annotated[str, "The unique identifier for the product in the store. Required to specify which product the image will be added to."], # noqa: E501
+ product_image_id: Annotated[str, "A unique identifier for the product image to be added."],
+ product_image_url: Annotated[str, "The URL of the image to be added to the product."],
+ store_id: Annotated[str, "The unique identifier for the store where the product is hosted. Required to specify which store's catalog you are updating."], # noqa: E501
+ product_variant_ids: Annotated[list[str] | None, "List of product variant IDs using the image."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'postEcommerceStoresIdProductsIdImages'."]: # noqa: E501
+ """Add a new image to a specific product.
+
+ This tool is used to add a new image to an existing product in a store's e-commerce catalog. It should be called when you need to update the product's visual information by uploading an additional image.""" # noqa: E501
+ request_data: Any = {"id": product_image_id, "url": product_image_url, "variant_ids": product_variant_ids} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/images".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, product_id=product_id), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_product_image_info(
+ context: ToolContext,
+ product_identifier: Annotated[str, "The unique identifier for the product in the store."],
+ product_image_id: Annotated[str, "The unique identifier for the product image to retrieve details about."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier of the store. Used to specify the store whose product image information is to be retrieved."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude, using dot notation for sub-object parameters."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object fields."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getEcommerceStoresIdProductsIdImagesId'."]: # noqa: E501
+ """Retrieve details of a specific product image in an eCommerce store.
+
+ Use this tool to get information about a specific image associated with a product in an eCommerce store. Ideal for obtaining image metadata or details for display or analysis purposes.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_identifier, image_id=product_image_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def update_product_image_mailchimp(
+ context: ToolContext,
+ product_identifier: Annotated[str, "The unique identifier for a product in the store. Used to specify which product's image should be updated."], # noqa: E501
+ product_image_id: Annotated[str, "The unique identifier for the product image to update."],
+ store_id: Annotated[str, "The unique identifier for the e-commerce store."],
+ product_image_unique_id: Annotated[str | None, "A unique identifier for a specific product image to be updated in the store."] = None, # noqa: E501
+ product_image_url: Annotated[str | None, "The URL of the product image to be updated."] = None,
+ variant_ids: Annotated[list[str] | None, "A list of product variant IDs associated with the image. Each variant ID should be a string."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'patchEcommerceStoresIdProductsIdImagesId'."]: # noqa: E501
+ """Update a product image in an e-commerce store.
+
+ This tool updates a specific product image within a Mailchimp e-commerce store. Use it when you need to modify an image associated with a product in a store managed by Mailchimp.""" # noqa: E501
+ request_data: Any = {"id": product_image_unique_id, "url": product_image_url, "variant_ids": variant_ids} # noqa: E501
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_id, product_id=product_identifier, image_id=product_image_id), # noqa: E501 # noqa: UP032
+ method="PATCH",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_product_image(
+ context: ToolContext,
+ product_id: Annotated[str, "The unique ID for the product in the store from which the image will be deleted."], # noqa: E501
+ product_image_id: Annotated[str, "The unique identifier for the product image to be deleted from the store's inventory."], # noqa: E501
+ store_identifier: Annotated[str, "The unique identifier for the e-commerce store."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteEcommerceStoresIdProductsIdImagesId'."]: # noqa: E501
+ """Delete an image from a product in an e-commerce store.
+
+ This tool deletes a specified image from a product within an e-commerce store, identified by store, product, and image IDs. It should be called when a product image needs to be removed from a store's inventory.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), store_id=store_identifier, product_id=product_id, image_id=product_image_id), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def search_mailchimp_campaigns(
+ context: ToolContext,
+ search_query: Annotated[str, "The terms used to filter and search Mailchimp campaigns."],
+ exclude_campaign_fields: Annotated[str | None, "Comma-separated list of fields to exclude from the search results. Use dot notation for sub-objects."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "Specify the fields to return as a comma-separated list. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getSearchCampaigns'."]:
+ """Search for email campaigns using query terms.
+
+ Use this tool to search all Mailchimp email campaigns that match specific query terms. This can help find campaigns based on certain criteria or keywords.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/search-campaigns".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_campaign_fields, "query": search_query}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def search_mailchimp_members(
+ context: ToolContext,
+ search_query: Annotated[str, "The search query to filter list members by email, first name, or last name."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list specifying which fields to exclude from results. Use dot notation for sub-object references."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ list_unique_id: Annotated[str | None, "The unique identifier for a Mailchimp list to restrict the search. Use this to specify a particular list."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getSearchMembers'."]:
+ """Search for Mailchimp list members across lists.
+
+ Search for list members in Mailchimp. This can be restricted to a specific list or used to search across all lists in an account.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/search-members".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "query": search_query, "list_id": list_unique_id}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def check_mailchimp_api_health(
+ context: ToolContext,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getPing'."]:
+ """Checks the health status of the Mailchimp API.
+
+ Use this tool to verify the operational status of the Mailchimp Marketing API and ensure it's running without issues. This check does not return account-specific data.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/ping".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_facebook_ads_list(
+ context: ToolContext,
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude. Utilize dot notation for sub-object fields."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of specific fields to return in the response. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination, with a default of 0."] = None, # noqa: E501
+ records_count: Annotated[str | None, "Specify the number of Facebook ad records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ sort_by_field: Annotated[str | None, "Specify the field by which to sort the Facebook ads."] = None, # noqa: E501
+ sort_direction: Annotated[str | None, "Specifies the sorting order: 'asc' for ascending or 'desc' for descending."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getAllFacebookAds'."]:
+ """Retrieve a list of Facebook ads from Mailchimp.
+
+ Use this tool to obtain a list of Facebook ads managed within Mailchimp. Ideal for getting an overview of current ad campaigns.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/facebook-ads".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": records_count, "offset": pagination_offset, "sort_field": sort_by_field, "sort_dir": sort_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_facebook_ad_details(
+ context: ToolContext,
+ facebook_ad_outreach_id: Annotated[str, "The unique outreach ID of the Facebook ad to retrieve details for."], # noqa: E501
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return; use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getFacebookAdsId'."]:
+ """Retrieve details of a specific Facebook ad campaign.
+
+ Use this tool to fetch detailed information about a specific Facebook ad by providing its outreach ID. This can be helpful for tracking ad performance or reviewing campaign specifics.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/facebook-ads/{outreach_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), outreach_id=facebook_ad_outreach_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_facebook_ads_reports(
+ context: ToolContext,
+ exclude_fields: Annotated[str | None, "A comma-separated list of fields to exclude in the report. Use dot notation for sub-objects if needed."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ record_count: Annotated[str | None, "Specify the number of Facebook ads records to return. Default is 10, maximum is 1000."] = None, # noqa: E501
+ sort_order_direction: Annotated[str | None, "Specifies the order direction for sorting results. Use 'asc' for ascending and 'desc' for descending."] = None, # noqa: E501
+ sorting_field_for_results: Annotated[str | None, "Specifies the field by which to sort the Facebook ads report results."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingFacebookAds'."]:
+ """Get reports of Facebook ads for marketing analysis.
+
+ Use this tool to retrieve detailed reports of Facebook ads data, which can be essential for analyzing marketing campaigns and performance metrics.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/facebook-ads".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields, "count": record_count, "offset": pagination_offset, "sort_field": sorting_field_for_results, "sort_dir": sort_order_direction}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_facebook_ad_report(
+ context: ToolContext,
+ outreach_id: Annotated[str, "The unique identifier for the Facebook ad campaign to retrieve the report for."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "List of fields to exclude from the report, using comma-separated values. Use dot notation for sub-object parameters."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingFacebookAdsId'."]:
+ """Get report details of a Facebook ad campaign.
+
+ Use this tool to retrieve detailed reports of a specific Facebook advertisement managed through Mailchimp. This is useful for analyzing ad performance and outreach impact.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/facebook-ads/{outreach_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), outreach_id=outreach_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_facebook_ads_product_activity(
+ context: ToolContext,
+ outreach_id: Annotated[str, "The unique identifier for the Facebook ads outreach campaign to retrieve the product activity breakdown."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Comma-separated list of fields to exclude using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "The number of records to return. Default is 10. Maximum is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+ sort_by_field: Annotated[str | None, "Specify the field to sort the returned records by, using the field name."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingFacebookAdsIdEcommerceProductActivity'."]: # noqa: E501
+ """Retrieve product activity breakdown for a Facebook ads outreach.
+
+ This tool provides a breakdown of ecommerce product activity for a specific Facebook ads outreach campaign. It should be called when detailed analytics of product performance related to a Facebook ad outreach is needed.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/facebook-ads/{outreach_id}/ecommerce-product-activity".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), outreach_id=outreach_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "count": number_of_records_to_return, "offset": pagination_offset, "sort_field": sort_by_field}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_landing_page_report(
+ context: ToolContext,
+ landing_page_outreach_id: Annotated[str, "The outreach ID for the landing page you want to retrieve the report for."], # noqa: E501
+ exclude_report_fields: Annotated[str | None, "A comma-separated list of fields to exclude from the landing page report. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingLandingPagesId'."]:
+ """Retrieve the report for a specific landing page.
+
+ Use this tool to get detailed reports on specific landing pages via their ID. Useful for analyzing landing page performance and metrics.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/landing-pages/{outreach_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), outreach_id=landing_page_outreach_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_report_fields}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_landing_page_reports(
+ context: ToolContext,
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "A comma-separated list of fields to include in the response, using dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records_to_return: Annotated[str | None, "Specify the number of records to return, from 1 to 1000. Defaults to 10 if not provided."] = None, # noqa: E501
+ records_to_skip: Annotated[str | None, "The number of records to skip for pagination. Default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingLandingPages'."]:
+ """Retrieve reports of landing pages from Mailchimp.
+
+ Use this tool to get detailed analytics and reports on landing pages set up in Mailchimp. Ideal for understanding performance metrics and engagement data.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/landing-pages".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": fields_to_exclude, "count": number_of_records_to_return, "offset": records_to_skip}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_reports(
+ context: ToolContext,
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude from survey reports. Use dot notation for sub-object fields."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to return. Use dot notation for sub-objects."] = None, # noqa: E501
+ number_of_records: Annotated[str | None, "The number of survey report records to return. Defaults to 10. Max value is 1000."] = None, # noqa: E501
+ pagination_offset: Annotated[str | None, "Number of records to skip for pagination, default is 0."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingSurveys'."]:
+ """Retrieve detailed reports for marketing surveys.
+
+ Use this tool to obtain detailed reports and insights from marketing surveys. Ideal for analyzing survey results and performance metrics.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/surveys".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude, "count": number_of_records, "offset": pagination_offset}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_report(
+ context: ToolContext,
+ survey_id: Annotated[str, "The unique ID of the survey to retrieve the report for."],
+ exclude_fields_list: Annotated[str | None, "A comma-separated list of fields to exclude from the survey report. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "A comma-separated list of fields to include in the survey report. Use dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingSurveysId'."]:
+ """Retrieve report details for a specific survey.
+
+ Call this tool to get comprehensive report details for a specified survey. Use this to analyze survey responses and results.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/surveys/{survey_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), survey_id=survey_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields_list}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_question_reports(
+ context: ToolContext,
+ survey_identifier: Annotated[str, "The unique identifier for the survey to retrieve question reports."], # noqa: E501
+ exclude_fields_from_report: Annotated[str | None, "A comma-separated list of fields to exclude from the survey report. Use dot notation for nested fields."] = None, # noqa: E501
+ include_fields: Annotated[str | None, "Comma-separated list of fields to return for survey questions. Use dot notation for sub-object parameters."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingSurveysIdQuestions'."]:
+ """Retrieve reports for survey questions by survey ID.
+
+ Use this tool to obtain data regarding the responses to each question within a specific survey. Ideal for analyzing survey results and gaining insights.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/surveys/{survey_id}/questions".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), survey_id=survey_identifier), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": include_fields, "exclude_fields": exclude_fields_from_report}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_question_report(
+ context: ToolContext,
+ survey_id: Annotated[str, "The unique identifier for the survey. Required to retrieve specific survey question reports."], # noqa: E501
+ survey_question_id: Annotated[str, "The unique ID of the survey question to get the report for."], # noqa: E501
+ fields_to_exclude: Annotated[str | None, "A comma-separated list of fields to exclude from the survey question report, using dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return using dot notation for sub-objects."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingSurveysIdQuestionsId'."]: # noqa: E501
+ """Get report data for a specific survey question.
+
+ Use this tool to retrieve detailed report information for a specific question in a survey. Useful for analyzing responses and performance of survey questions.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/surveys/{survey_id}/questions/{question_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), survey_id=survey_id, question_id=survey_question_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": fields_to_exclude}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_question_answers(
+ context: ToolContext,
+ survey_identifier: Annotated[str, "The unique identifier for the survey whose question answers are being retrieved."], # noqa: E501
+ survey_question_id: Annotated[str, "The unique identifier for the survey question to retrieve answers from."], # noqa: E501
+ exclude_fields: Annotated[str | None, "Specify fields to exclude from the response using a comma-separated list. Use dot notation for sub-objects."] = None, # noqa: E501
+ fields_to_return: Annotated[str | None, "Comma-separated list of fields to return, using dot notation for sub-objects."] = None, # noqa: E501
+ filter_by_respondent_familiarity: Annotated[str | None, "Filter survey responses based on the familiarity level of the respondents. Accepts a string value."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingSurveysIdQuestionsIdAnswers'."]: # noqa: E501
+ """Retrieve answers for a specific survey question.
+
+ Use this tool to get answers for a particular question in a given survey. Useful for analyzing survey responses to specific questions within Mailchimp.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/surveys/{survey_id}/questions/{question_id}/answers".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), survey_id=survey_identifier, question_id=survey_question_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": fields_to_return, "exclude_fields": exclude_fields, "respondent_familiarity_is": filter_by_respondent_familiarity}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_responses(
+ context: ToolContext,
+ survey_id: Annotated[str, "The unique identifier for the survey to retrieve responses for."],
+ chosen_answer_id: Annotated[str | None, "The ID of the selected answer option to filter survey responses."] = None, # noqa: E501
+ exclude_survey_fields: Annotated[str | None, "A comma-separated list of fields to exclude from survey responses. Use dot notation for sub-objects."] = None, # noqa: E501
+ filter_by_respondent_familiarity: Annotated[str | None, "Filter survey responses by respondents' familiarity level. Provide a familiarity string to narrow down results."] = None, # noqa: E501
+ included_fields: Annotated[str | None, "A comma-separated list of fields to return in the response. Use dot notation for sub-objects."] = None, # noqa: E501
+ question_id: Annotated[str | None, "The ID of the question that was answered to filter responses."] = None, # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingSurveysIdResponses'."]:
+ """Retrieve responses to a specific survey.
+
+ Use this tool to obtain responses from a specific survey when you have the survey ID."""
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/surveys/{survey_id}/responses".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), survey_id=survey_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({"fields": included_fields, "exclude_fields": exclude_survey_fields, "answered_question": question_id, "chose_answer": chosen_answer_id, "respondent_familiarity_is": filter_by_respondent_familiarity}), # noqa: E501
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_survey_response(
+ context: ToolContext,
+ survey_id: Annotated[str, "The ID of the survey to retrieve the response from."],
+ survey_response_id: Annotated[str, "The ID of the specific survey response to retrieve."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getReportingSurveysIdResponsesId'."]: # noqa: E501
+ """Retrieve details of a specific survey response.
+
+ Call this tool to get detailed information of a particular survey response using its survey and response IDs.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/reporting/surveys/{survey_id}/responses/{response_id}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), survey_id=survey_id, response_id=survey_response_id), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_domain_details(
+ context: ToolContext,
+ domain_name: Annotated[str, "The domain name to retrieve details for. Must be a verified domain on the account."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getVerifiedDomain'."]:
+ """Retrieve details for a specific verified domain.
+
+ Use this tool to get the details of a single verified domain on your Mailchimp account. Useful for accessing domain-specific information.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/verified-domains/{domain_name}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), domain_name=domain_name), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def delete_verified_domain(
+ context: ToolContext,
+ domain_name: Annotated[str, "The domain name to be deleted from your Mailchimp account."],
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'deleteVerifiedDomain'."]:
+ """Deletes a verified domain from your Mailchimp account.
+
+ Use this tool to remove a domain that has been previously verified in your Mailchimp account. Ideal for situations where a domain is no longer needed or has ownership changes.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/verified-domains/{domain_name}".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), domain_name=domain_name), # noqa: E501 # noqa: UP032
+ method="DELETE",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def verify_sending_domain(
+ context: ToolContext,
+ domain_name_to_verify: Annotated[str, "The domain name you wish to verify for sending emails through Mailchimp."], # noqa: E501
+ verification_code: Annotated[str, "The code sent to the provided email address for domain verification."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'verifyDomain'."]:
+ """Verify if a domain is authorized for sending emails.
+
+ Use this tool to verify whether a specific domain is authorized for sending emails through Mailchimp. It should be called when you need to confirm the sending capabilities of a domain.""" # noqa: E501
+ request_data: Any = {"code": verification_code}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/verified-domains/{domain_name}/actions/verify".format(base_url=await utils.get_base_url(context, HTTP_CLIENT), domain_name=domain_name_to_verify), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def get_verified_mailchimp_domains(
+ context: ToolContext,
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'getVerifiedDomains'."]:
+ """Retrieve all verified sending domains for a Mailchimp account.
+
+ This tool retrieves the list of all sending domains verified on a Mailchimp account. It should be called when users want to view their registered sending domains.""" # noqa: E501
+ request_data: Any = {}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/verified-domains".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="GET",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
+
+
+@tool(requires_auth=OAuth2(id="arcade-mailchimp"))
+async def add_verified_domain(
+ context: ToolContext,
+ verification_email_address: Annotated[str, "The email address at the domain to verify, which will receive a two-factor challenge for verification."], # noqa: E501
+) -> Annotated[dict[str, Any], "Response from the API endpoint 'createVerifiedDomain'."]:
+ """Add a verified domain to your Mailchimp account.
+
+ Use this tool to add a verified domain to your Mailchimp account. This is useful for managing communication and ensuring trust with your recipients.""" # noqa: E501
+ request_data: Any = {"verification_email": verification_email_address}
+ if isinstance(request_data, dict):
+ request_data = remove_none_values(request_data)
+ content = json.dumps(request_data) if request_data else None
+ response = await make_request(
+ url="{base_url}/verified-domains".format(base_url=await utils.get_base_url(context, HTTP_CLIENT)), # noqa: E501 # noqa: UP032
+ method="POST",
+ params=remove_none_values({}),
+ headers=remove_none_values({"Content-Type": "application/json", "Authorization": "Bearer {authorization}".format(authorization=context.get_auth_token_or_empty())}), # noqa: E501 # noqa: UP032
+ content=content,
+ )
+ try:
+ return {"response_json": response.json()}
+ except Exception:
+ return {"response_text": response.text}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/request_body_schemas.py b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/request_body_schemas.py
new file mode 100644
index 00000000..3e225d83
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/request_body_schemas.py
@@ -0,0 +1,51 @@
+"""Request Body Schemas for API Tools
+
+DO NOT EDIT THIS MODULE DIRECTLY.
+
+THIS MODULE WAS AUTO-GENERATED AND CONTAINS OpenAPI REQUEST BODY SCHEMAS
+FOR TOOLS WITH COMPLEX REQUEST BODIES. ANY CHANGES TO THIS MODULE WILL
+BE OVERWRITTEN BY THE TRANSPILER.
+"""
+from typing import Any
+
+REQUEST_BODY_SCHEMAS: dict[str, Any] = {
+ "CREATEAUDIENCECONTACT": '{"type": "object", "description": "An instance of a contact.", "properties": {"language": {"type": "string", "title": "Language", "description": "The subscribers detected language.", "example": "EN"}, "email_channel": {"type": "object", "title": "Email Channel Details", "properties": {"email": {"type": "string", "title": "Email Address", "description": "Email address", "example": "example@freddiemail.com"}, "marketing_consent": {"type": "object", "title": "Marketing Consent Details", "description": "A contact\'s current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.", "properties": {"status": {"type": "string", "title": "Marketing Consent Status", "description": "Status of a contacts Marketing Consent", "enum": ["confirmed", "consented", "denied", "unknown"], "example": "confirmed"}}}}}, "sms_channel": {"type": "object", "title": "SMS Channel Details", "properties": {"sms_phone": {"type": "string", "title": "SMS Phone Number", "description": "SMS Phone Number", "example": "+16155550128"}, "marketing_consent": {"type": "object", "title": "Marketing Consent Details", "description": "A contact\'s current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.", "properties": {"status": {"type": "string", "title": "Marketing Consent Status", "description": "The current consent status captured for a contact\u2019s marketing communications.", "enum": ["confirmed", "consented", "unknown"], "example": "confirmed"}}}}}, "merge_fields": {"type": "object", "title": "Merge Fields", "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.", "additionalProperties": {"description": "This object\'s keys are merge tags (like FNAME). It\'s values are the values to be added to the merge field."}}, "tags": {"type": "array", "title": "Tags", "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.", "items": {"type": "string", "title": "Tag Name"}, "example": ["new_tag", "another_tag"]}}}', # noqa: E501
+ "UPDATECONTACTINFORMATION": '{"type": "object", "description": "An instance of a contact.", "properties": {"language": {"type": "string", "title": "Language", "description": "The subscribers detected language.", "example": "EN"}, "email_channel": {"type": "object", "title": "Email Channel Details", "properties": {"email": {"type": "string", "title": "Email Address", "description": "Email address", "example": "example@freddiemail.com"}, "marketing_consent": {"description": "A contact\'s current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.", "type": "object", "properties": {"status": {"type": "string", "title": "Marketing Consent Status", "enum": ["consented", "denied", "confirmed", "unknown"]}, "source": {"type": "object", "title": "Source", "description": "The source from which the parent\'s entity was created from.", "properties": {"name": {"type": "string", "title": "Entity source name", "description": "The name of the entity\'s source"}}}}}}}, "sms_channel": {"type": "object", "title": "SMS Channel Details", "properties": {"sms_phone": {"type": "string", "title": "SMS Phone Number", "description": "SMS Phone Number", "example": "+16155550128"}, "marketing_consent": {"description": "A contact\'s current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.", "type": "object", "properties": {"status": {"type": "string", "title": "Marketing Consent Status", "enum": ["consented", "confirmed", "unknown"]}, "source": {"type": "object", "title": "Source", "description": "The source from which the parent\'s entity was created from.", "properties": {"name": {"type": "string", "title": "Entity source name", "description": "The name of the entity\'s source"}}}}}}}, "merge_fields": {"type": "object", "title": "Merge Fields", "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.", "additionalProperties": {"description": "This object\'s keys are merge tags (like FNAME). It\'s values are the values to be added to the merge field."}}, "tags": {"type": "array", "title": "Tags", "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.", "items": {"type": "string", "title": "Tag Name"}, "example": ["tag_to_add_1", "tag_to_add_2"]}}}', # noqa: E501
+ "UPDATEAUTOMATIONEMAILSETTINGS": '{"type": "object", "title": "Update information about a specific workflow email", "description": "Update information about an individual Automation workflow email.", "properties": {"settings": {"type": "object", "title": "Campaign Settings", "description": "Settings for the campaign including the email subject, from name, and from email address.", "properties": {"subject_line": {"type": "string", "title": "Campaign Subject Line", "description": "The subject line for the campaign."}, "preview_text": {"type": "string", "title": "Campaign Preview Text", "description": "The preview text for the campaign."}, "title": {"type": "string", "title": "Automation Title", "description": "The title of the Automation."}, "from_name": {"type": "string", "title": "From Name", "description": "The \'from\' name for the Automation (not an email address)."}, "reply_to": {"type": "string", "title": "Reply To Address", "description": "The reply-to email address for the Automation."}}}, "delay": {"type": "object", "title": "Automation Delay", "description": "The delay settings for an automation email.", "required": ["action"], "properties": {"amount": {"type": "integer", "title": "Delay Amount", "description": "The delay amount for an automation email.", "example": 1}, "type": {"type": "string", "enum": ["now", "day", "hour", "week"], "title": "Delay Type", "description": "The type of delay for an automation email.", "example": "day"}, "direction": {"type": "string", "title": "Delay Direction", "description": "Whether the delay settings describe before or after the delay action of an automation email.", "enum": ["after"], "example": "after"}, "action": {"type": "string", "title": "Delay Action", "description": "The action that triggers the delay of an automation emails.", "enum": ["signup", "ecomm_abandoned_browse", "ecomm_abandoned_cart"], "example": "signup"}}}}}', # noqa: E501
+ "STARTBATCHPROCESSING": '{"type": "object", "required": ["operations"], "properties": {"operations": {"type": "array", "title": "Operations List", "description": "An array of objects that describes operations to perform.", "items": {"type": "object", "title": "Operations", "required": ["method", "path"], "properties": {"method": {"type": "string", "title": "HTTP Method", "description": "The HTTP method to use for the operation.", "enum": ["GET", "POST", "PUT", "PATCH", "DELETE"], "example": "POST"}, "path": {"type": "string", "title": "Path", "description": "The relative path to use for the operation.", "example": "/lists"}, "params": {"type": "object", "title": "Query Parameters", "description": "Any request query parameters. Example parameters: {\"count\":10, \"offset\":0}", "example": "{\"count\":10,\"offset\":0}"}, "body": {"type": "string", "title": "Body", "description": "A string containing the JSON body to use with the request.", "example": "{\"title\":\"Test\"}"}, "operation_id": {"type": "string", "title": "Operation ID", "description": "An optional client-supplied id returned with the operation results.", "example": "my-id-123"}}}}}}', # noqa: E501
+ "CREATEMAILCHIMPCAMPAIGN": '{"type": "object", "title": "Campaign", "description": "A summary of an individual campaign\'s settings and content.", "required": ["type"], "properties": {"type": {"type": "string", "title": "Campaign Type", "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.", "enum": ["regular", "plaintext", "absplit", "rss", "variate"]}, "recipients": {"type": "object", "title": "List", "description": "List settings for the campaign.", "required": ["list_id"], "properties": {"list_id": {"type": "string", "title": "List ID", "description": "The unique list id."}, "segment_opts": {"type": "object", "title": "Segment Options", "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.", "properties": {"saved_segment_id": {"type": "integer", "title": "Saved Segment ID", "description": "The id for an existing saved segment."}, "match": {"type": "string", "title": "Match Type", "description": "Segment match type.", "enum": ["any", "all"]}, "conditions": {"type": "array", "title": "Segment Type", "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).", "items": {"x-discriminator": {"type": "string", "propertyName": "condition_type"}, "x-oneOf": [{"type": "object", "title": "Aim Segment", "description": "Segment by interaction with a specific campaign.", "properties": {"condition_type": {"type": "string", "x-value": "Aim", "enum": ["Aim"]}, "field": {"type": "string", "enum": ["aim"], "title": "Segment Field", "description": "Segment by interaction with a specific campaign.", "example": "aim"}, "op": {"type": "string", "enum": ["open", "click", "sent", "noopen", "noclick", "nosent"], "title": "Segment Operator", "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn\'t open, didn\'t click, or was not sent.", "example": "open"}, "value": {"type": "string", "title": "Segment Data", "description": "Either the web id value for a specific campaign or \'any\' to account for subscribers who have/have not interacted with any campaigns.", "example": "any"}}}, {"type": "object", "title": "Automation Segment", "description": "Segment by interaction with an Automation workflow.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Automation", "enum": ["Automation"]}, "field": {"type": "string", "enum": ["automation"], "title": "Segment Field", "description": "Segment by interaction with an Automation workflow.", "example": "automation"}, "op": {"type": "string", "enum": ["started", "completed", "not_started", "not_completed"], "title": "Segment Operator", "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.", "example": "started"}, "value": {"type": "string", "title": "Segment Data", "description": "The web id for the automation workflow to segment against.", "example": "2135217"}}}, {"type": "object", "title": "Poll Activity Segment", "description": "Segment by poll activity.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "CampaignPoll", "enum": ["CampaignPoll"]}, "field": {"type": "string", "enum": ["poll"], "title": "Segment Field", "description": "Segment by poll activity.", "example": "poll"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Members have/have not interacted with a specific poll in a Mailchimp email.", "example": "member"}, "value": {"type": "number", "title": "Segment Operator", "description": "The id for the poll.", "example": 409}}}, {"type": "object", "title": "Conversation Segment", "description": "Segment by interaction with a campaign via Conversations.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Conversation", "enum": ["Conversation"]}, "field": {"type": "string", "enum": ["conversation"], "title": "Segment Field", "description": "Segment by interaction with a campaign via Conversations.", "example": "conversation"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "The status of a member\'s interaction with a conversation. One of the following: has replied or has not replied.", "example": "member"}, "value": {"type": "string", "title": "Segment Data", "description": "The web id value for a specific campaign or \'any\' to account for subscribers who have/have not interacted with any campaigns.", "example": "any"}}}, {"type": "object", "title": "Date Segment", "description": "Segment by a specific date field.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Date", "enum": ["Date"]}, "field": {"type": "string", "enum": ["timestamp_opt", "info_changed", "ecomm_date"], "title": "Segment Field", "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.", "example": "timestamp_opt"}, "op": {"type": "string", "enum": ["greater", "less", "is", "not", "blank", "blank_not", "within", "notwithin"], "title": "Segment Operator", "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.", "example": "greater"}, "value": {"type": "string", "title": "Segment Data", "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.", "example": "date"}, "extra": {"type": "string", "title": "Segment Extra Value", "description": "When segmenting on \'date\' or \'campaign\', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.", "example": "2015-01-30"}}}, {"type": "object", "title": "Email Client Segment", "description": "Segment by use of a particular email client.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "EmailClient", "enum": ["EmailClient"]}, "field": {"type": "string", "enum": ["email_client"], "title": "Segment Field", "description": "Segment by use of a particular email client.", "example": "email_client"}, "op": {"type": "string", "enum": ["client_is", "client_not"], "title": "Segment Operator", "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.", "example": "client_is"}, "value": {"type": "string", "title": "Segment Data", "description": "The name of the email client.", "example": "Gmail"}}}, {"type": "object", "title": "Language Segment", "description": "Segment by language.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Language", "enum": ["Language"]}, "field": {"type": "string", "enum": ["language"], "title": "Segment Field", "description": "Segmenting based off of a subscriber\'s language.", "example": "language"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Whether the member\'s language is or is not set to a specific language.", "example": "is"}, "value": {"type": "string", "title": "Segment Data", "description": "A two-letter language identifier.", "example": "en"}}}, {"type": "object", "title": "Member Rating Segment", "description": "Segment by member rating.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "MemberRating", "enum": ["MemberRating"]}, "field": {"type": "string", "enum": ["rating"], "title": "Segment Field", "description": "Segment by member rating.", "example": "rating"}, "op": {"type": "string", "enum": ["is", "not", "greater", "less"], "title": "Segment Operator", "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.", "example": "greater"}, "value": {"type": "number", "title": "Segment Operator", "description": "The star rating number to segment against.", "example": 4}}}, {"type": "object", "title": "Signup Source Segment", "description": "Segment by signup source.", "required": ["field", "condition_type", "op"], "properties": {"condition_type": {"type": "string", "enum": ["SignupSource"], "x-value": "SignupSource", "title": "Type"}, "field": {"type": "string", "enum": ["source"], "title": "Segment Field", "example": "source"}, "op": {"type": "string", "enum": ["source_is", "source_not"], "title": "Segment Operator", "description": "Whether the member\'s signup source was/was not a particular value.", "example": "source_is"}, "value": {"type": "string", "title": "Segment Data", "description": "The signup source.", "example": "List Import"}}}, {"type": "object", "title": "Survey Monkey Segment", "description": "Segment by interaction with a SurveyMonkey survey.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SurveyMonkey", "enum": ["SurveyMonkey"]}, "field": {"type": "string", "enum": ["survey_monkey"], "title": "Segment Field", "description": "Segment by interaction with a SurveyMonkey survey.", "example": "survey_monkey"}, "op": {"type": "string", "enum": ["started", "completed", "not_started", "not_completed"], "title": "Segment Operator", "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.", "example": "started"}, "value": {"type": "string", "title": "Survey ID", "description": "The unique ID of the survey monkey survey.", "example": "32179586"}}}, {"type": "object", "title": "VIP Segment", "description": "Segment by VIP status.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "VIP", "enum": ["VIP"]}, "field": {"type": "string", "enum": ["gmonkey"], "title": "Segment Field", "description": "Segment by VIP status.", "example": "gmonkey"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Whether the member is or is not marked as VIP.", "example": "member"}}}, {"type": "object", "title": "Interests Segment", "description": "Segment by an interest group merge field.", "properties": {"condition_type": {"type": "string", "x-value": "Interests", "enum": ["Interests"]}, "field": {"type": "string", "title": "Segment Field", "description": "Segmenting based on interest group information. This should start with \'interests-\' followed by the grouping id. Ex. \'interests-123\'.", "example": "interests-123"}, "op": {"type": "string", "enum": ["interestcontains", "interestcontainsall", "interestnotcontains"], "title": "Segment Operator", "description": "Whether the member is a part of one, all, or none of the groups.", "example": "interestcontains"}, "value": {"type": "array", "title": "Segment Value", "description": "An array containing strings, each representing a group id.", "items": {"type": "string", "example": ["44401", "44405", "44409"]}}}}, {"type": "object", "title": "Ecommerce Category Segment", "description": "Segment by purchases in specific items or categories.", "properties": {"condition_type": {"type": "string", "x-value": "EcommCategory", "enum": ["EcommCategory"]}, "field": {"type": "string", "enum": ["ecomm_cat", "ecomm_prod"], "title": "Segment Field", "description": "Segment by purchases in specific items or categories.", "example": "ecomm_cat"}, "op": {"type": "string", "enum": ["is", "not", "contains", "notcontain", "starts", "ends"], "title": "Segment Operator", "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn\'t contain a specific phrase or string, or a category/item name that starts/ends with a string.", "example": "is"}, "value": {"type": "string", "title": "Segment Data", "description": "The ecommerce category/item information.", "example": "Product"}}}, {"type": "object", "title": "Ecommerce Number Segment", "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "EcommNumber", "enum": ["EcommNumber"]}, "field": {"type": "string", "enum": ["ecomm_spent_avg", "ecomm_orders", "ecomm_prod_all", "ecomm_avg_ord"], "title": "Segment Field", "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.", "example": "ecomm_orders"}, "op": {"type": "string", "enum": ["is", "not", "greater", "less"], "title": "Segment Operator", "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.", "example": "greater"}, "value": {"type": "number", "title": "Segment Operator", "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.", "example": 42}}}, {"type": "object", "title": "Ecommerce Purchased Segment", "description": "Segment by whether someone has purchased anything.", "properties": {"condition_type": {"type": "string", "x-value": "EcommPurchased", "enum": ["EcommPurchased"]}, "field": {"type": "string", "enum": ["ecomm_purchased"], "title": "Segment Field", "description": "Segment by whether someone has purchased anything.", "example": "ecomm_purchased"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Members who have have (\'member\') or have not (\'notmember\') purchased.", "example": "member"}}}, {"type": "object", "title": "Ecommerce Spent Segment", "description": "Segment by amount spent on a single order or across all orders.", "properties": {"condition_type": {"type": "string", "x-value": "EcommSpent", "enum": ["EcommSpent"]}, "field": {"type": "string", "enum": ["ecomm_spent_one", "ecomm_spent_all"], "title": "Segment Field", "description": "Segment by amount spent on a single order or across all orders.", "example": "ecomm_spent_one"}, "op": {"type": "string", "enum": ["greater", "less"], "title": "Segment Operator", "description": "Members who have spent \'more\' or \'less\' than then specified value.", "example": "greater"}, "value": {"type": "integer", "title": "Segment Data", "description": "The total amount a member spent.", "example": 42}}}, {"type": "object", "title": "Ecommerce Purchased Store Segment", "description": "Segment by purchases from a specific store.", "properties": {"condition_type": {"type": "string", "x-value": "EcommStore", "enum": ["EcommStore"]}, "field": {"type": "string", "enum": ["ecomm_store"], "title": "Segment Field", "description": "Segment by purchases from a specific store.", "example": "ecomm_store"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who have or have not purchased from a specific store.", "example": "is"}, "value": {"type": "string", "title": "Segment Operator", "description": "The store id to segment against.", "example": "289"}}}, {"type": "object", "title": "Goal Activity Segment", "description": "Segment by Goal activity.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "GoalActivity", "enum": ["GoalActivity"]}, "field": {"type": "string", "enum": ["goal"], "title": "Segment Field", "description": "Segment by Goal activity.", "example": "goal"}, "op": {"type": "string", "enum": ["is", "goal_not", "contains", "goal_notcontain", "starts", "ends"], "title": "Segment Operator", "description": "Whether the website URL is/not exactly, contains/doesn\'t contain, starts with/ends with a string.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "The URL to check Goal activity against."}}}, {"type": "object", "title": "Goal Timestamp Segment", "description": "Segment by most recent interaction with a website.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "GoalTimestamp", "enum": ["GoalTimestamp"]}, "field": {"type": "string", "enum": ["goal_last_visited"], "title": "Segment Field", "description": "Segment by most recent interaction with a website.", "example": "goal_last_visited"}, "op": {"type": "string", "enum": ["greater", "less", "is"], "title": "Segment Operator", "description": "Whether the website activity happened after, before, or at a given timestamp.", "example": "greater"}, "value": {"type": "string", "title": "Segment Value", "description": "The date to check Goal activity against.", "example": "2015-07-20 19:45:21"}}}, {"type": "object", "title": "Similar Subscribers Segment Member Segment", "description": "Segment by similar subscribers.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "FuzzySegment", "enum": ["FuzzySegment"]}, "field": {"type": "string", "enum": ["fuzzy_segment"], "title": "Segment Field", "description": "Segment by similar subscribers.", "example": "fuzzy_segment"}, "op": {"type": "string", "enum": ["fuzzy_is", "fuzzy_not"], "title": "Segment Operator", "description": "Members who are/are not apart of a \'similar subscribers\' segment.", "example": "fuzzy_is"}, "value": {"type": "number", "title": "Segment Operator", "description": "The id for the \'similar subscribers\' segment.", "example": 48433}}}, {"type": "object", "title": "Static Segment Member Segment", "description": "Segment by a given static segment.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "StaticSegment", "enum": ["StaticSegment"]}, "field": {"type": "string", "enum": ["static_segment"], "title": "Segment Field", "description": "Segment by a given static segment.", "example": "static_segment"}, "op": {"type": "string", "enum": ["static_is", "static_not"], "title": "Segment Operator", "description": "Members who are/are not apart of a static segment.", "example": "static_is"}, "value": {"type": "number", "title": "Segment Operator", "description": "The id for the static segment.", "example": 48433}}}, {"type": "object", "title": "Location-Based Segment", "description": "Segment by a specific country or US state.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoCountryState", "enum": ["IPGeoCountryState"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeocountry", "ipgeonotcountry", "ipgeostate", "ipgeonotstate"], "title": "Segment Operator", "description": "Segment members who are within a specific country or US state.", "example": "ipgeocountry"}, "value": {"type": "string", "title": "Segment Data", "description": "The two-letter country code or US state abbreviation.", "example": "US"}}}, {"type": "object", "title": "Geolocation Segment", "description": "Segment by a specific geographic region.", "required": ["field", "op", "value", "addr", "lat", "lng"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoIn", "enum": ["IPGeoIn"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeoin", "ipgeonotin"], "title": "Segment Operator", "description": "Segment members who are within a specific geographic region.", "example": "ipgeoin"}, "value": {"type": "integer", "title": "Segment Data", "description": "The radius of the target location.", "example": 42}, "addr": {"type": "string", "title": "Segment Location Address", "description": "The address of the target location.", "example": "Atlanta, GA, USA"}, "lat": {"type": "string", "title": "Segment Location Latitude", "description": "The latitude of the target location.", "example": "33.7489954"}, "lng": {"type": "string", "title": "Segment Location Longitude", "description": "The longitude of the target location.", "example": "-84.3879824"}}}, {"type": "object", "title": "US Zip Code Segment", "description": "Segment by a specific US ZIP code.", "required": ["field", "op", "value", "extra"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoInZip", "enum": ["IPGeoInZip"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeoinzip"], "title": "Segment Operator", "description": "Segment members who are within a specific US zip code.", "example": "ipgeoinzip"}, "value": {"type": "integer", "title": "Segment Data", "description": "The radius of the target location.", "example": 25}, "extra": {"type": "integer", "title": "Extra Data", "description": "The zip code to segment against.", "example": 30318}}}, {"type": "object", "title": "Unknown Location-Based Segment", "description": "Segment members whose location information is unknown.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoUnknown", "enum": ["IPGeoUnknown"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeounknown"], "title": "Segment Operator", "description": "Segment members for which location information is unknown.", "example": "ipgeounknown"}}}, {"type": "object", "title": "Zip Code Location-Based Segment", "description": "Segment by a specific US ZIP code.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoZip", "enum": ["IPGeoZip"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeoiszip", "ipgeonotzip"], "title": "Segment Operator", "description": "Segment members who are/are not within a specific US zip code.", "example": "ipgeonotzip"}, "value": {"type": "integer", "title": "Segment Data", "description": "The 5-digit zip code.", "example": 30318}}}, {"type": "object", "title": "Social Profiles Age Segment", "description": "Segment by age ranges in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialAge", "enum": ["SocialAge"]}, "field": {"type": "string", "enum": ["social_age"], "title": "Segment Field", "description": "Segment by age ranges in Social Profiles data.", "example": "social_age"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["18-24", "25-34", "35-54", "55+"], "title": "Segment Operator", "description": "The age range to segment.", "example": "35-54"}}}, {"type": "object", "title": "Social Profiles Gender Segment", "description": "Segment by listed gender in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialGender", "enum": ["SocialGender"]}, "field": {"type": "string", "enum": ["social_gender"], "title": "Segment Field", "description": "Segment by listed gender in Social Profiles data.", "example": "social_gender"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["male", "female"], "title": "Segment Operator", "description": "The Social Profiles gender to segment.", "example": "female"}}}, {"type": "object", "title": "Social Profiles Influence Segment", "description": "Segment by influence rating in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialInfluence", "enum": ["SocialInfluence"]}, "field": {"type": "string", "enum": ["social_influence"], "title": "Segment Field", "description": "Segment by influence rating in Social Profiles data.", "example": "social_influence"}, "op": {"type": "string", "enum": ["is", "not", "greater", "less"], "title": "Segment Operator", "description": "Members who have a rating that is/not or greater/less than the rating provided.", "example": "greater"}, "value": {"type": "number", "title": "Segment Operator", "description": "The Social Profiles influence rating to segment.", "example": 2}}}, {"type": "object", "title": "Social Profiles Social Network Segment", "description": "Segment by social network in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialNetworkMember", "enum": ["SocialNetworkMember"]}, "field": {"type": "string", "enum": ["social_network"], "title": "Segment Field", "description": "Segment by social network in Social Profiles data.", "example": "social_network"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Members who are/not on a given social network.", "example": "member"}, "value": {"type": "string", "enum": ["twitter", "facebook", "linkedin", "flickr", "foursquare", "lastfm", "myspace", "quora", "vimeo", "yelp", "youtube"], "title": "Segment Operator", "description": "The social network to segment against.", "example": "twitter"}}}, {"type": "object", "title": "Social Profiles Social Network Follow Segment", "description": "Segment by social network in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialNetworkFollow", "enum": ["SocialNetworkFollow"]}, "field": {"type": "string", "enum": ["social_network"], "title": "Segment Field", "description": "Segment by social network in Social Profiles data.", "example": "social_network"}, "op": {"type": "string", "enum": ["follow", "notfollow"], "title": "Segment Operator", "description": "Members who are/not following a linked account on a given social network.", "example": "follow"}, "value": {"type": "string", "enum": ["twitter_follow"], "title": "Segment Operator", "description": "The social network to segment against.", "example": "twitter_follow"}}}, {"type": "object", "title": "Address Merge Field Segment", "description": "Segment by an address-type merge field.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "AddressMerge", "enum": ["AddressMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "An address-type merge field to segment.", "example": "MMERGE3"}, "op": {"type": "string", "enum": ["contains", "notcontain", "blank", "blank_not"], "title": "Segment Operator", "description": "Whether the member\'s address merge field contains/does not contain a value or is/is not blank.", "example": "contains"}, "value": {"type": "string", "title": "Segment Value", "description": "The value to segment a text merge field with.", "example": "Atlanta"}}}, {"type": "object", "title": "Address/Zip Merge Field Segment", "description": "Segment by an address-type merge field within a given distance.", "required": ["field", "op", "value", "extra"], "properties": {"condition_type": {"type": "string", "x-value": "ZipMerge", "enum": ["ZipMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "An address or zip-type merge field to segment.", "example": "MMERGE2"}, "op": {"type": "string", "enum": ["geoin"], "title": "Segment Operator", "description": "Whether the member\'s address merge field is within a given distance from a city or zip.", "example": "geoin"}, "value": {"type": "string", "title": "Segment Value", "description": "The distance from the city/zip.", "example": "25"}, "extra": {"type": "string", "title": "Segment Extra", "description": "The city or the zip being used to segment against.", "example": "30318"}}}, {"type": "object", "title": "Birthday Merge Field Segment", "description": "Segment by a contact\'s birthday.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "BirthdayMerge", "enum": ["BirthdayMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A date merge field to segment.", "example": "MMERGE4"}, "op": {"type": "string", "enum": ["is", "not", "blank", "blank_not"], "title": "Segment Operator", "description": "Whether the member\'s birthday merge information is/is not a certain date or is/is not blank.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "A date to segment against (mm/dd).", "example": "01/30"}}}, {"type": "object", "title": "Date Merge Field Segment", "description": "Segment by a given date merge field.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "DateMerge", "enum": ["DateMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A date merge field to segment.", "example": "MMERGE5"}, "op": {"type": "string", "enum": ["is", "not", "less", "blank", "blank_not", "greater"], "title": "Segment Operator", "description": "Whether the member\'s merge information is/is not, is greater/less than a value or is/is not blank.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "A date to segment against.", "example": "01/30/2015"}}}, {"type": "object", "title": "Dropdown/Radio Merge Field Segment", "description": "An individual segment condition", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "SelectMerge", "enum": ["SelectMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A merge field to segment.", "example": "MMERGE6"}, "op": {"type": "string", "enum": ["is", "not", "blank", "blank_not", "notcontain", "contains"], "title": "Segment Operator", "description": "Whether the member\'s merge information is/is not a value or is/is not blank.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "The value to segment a text merge field with.", "example": "Second Choice"}}}, {"type": "object", "title": "Text or Number Merge Field Segment", "description": "Segment by a given text or number merge field.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "TextMerge", "enum": ["TextMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A text or number merge field to segment.", "example": "MMERGE7"}, "op": {"type": "string", "enum": ["is", "not", "contains", "notcontain", "starts", "ends", "greater", "less", "blank", "blank_not"], "title": "Segment Operator", "description": "Whether the member\'s merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value", "example": "contains"}, "value": {"type": "string", "title": "Segment Value", "description": "The value to segment a text or number merge field with.", "example": "Freddie\'s Jokes"}}}, {"type": "object", "title": "Email Segment", "description": "Segment by email address.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "EmailAddress", "enum": ["EmailAddress"]}, "field": {"type": "string", "enum": ["merge0", "EMAIL"], "title": "Segment Field", "description": "Segmenting based off of a subscriber\'s email address.", "example": "EMAIL"}, "op": {"type": "string", "enum": ["is", "not", "contains", "notcontain", "starts", "ends", "greater", "less"], "title": "Segment Operator", "description": "Whether the email address is/not exactly, contains/doesn\'t contain, starts/ends with a string."}, "value": {"type": "string", "title": "Segment Value", "description": "The value to compare the email against.", "example": "urist.mcvankab@freddiesjokes.com"}}}, {"type": "object", "title": "Predicted Gender Segment", "description": "Segment by predicted gender.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "PredictedGender", "enum": ["PredictedGender"]}, "field": {"type": "string", "enum": ["predicted_gender"], "title": "Segment Field", "description": "Segment by predicted gender."}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["male", "female"], "title": "Segment Operator", "description": "The predicted gender to segment.", "example": "female"}}}, {"type": "object", "title": "Predicted Age Segment", "description": "Segment by predicted age.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "PredictedAge", "enum": ["PredictedAge"]}, "field": {"type": "string", "enum": ["predicted_age_range"], "title": "Segment Field", "description": "Segment by predicted age."}, "op": {"type": "string", "enum": ["is"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["18-24", "25-34", "35-44", "45-54", "55-64", "65+"], "title": "Segment Operator", "description": "The predicted age to segment.", "example": "female"}}}, {"type": "object", "title": "New Subscribers Prebuilt Segment", "description": "Segment by when people subscribed.", "properties": {"condition_type": {"type": "string", "x-value": "NewSubscribers", "enum": ["NewSubscribers"]}, "field": {"type": "string", "enum": ["timestamp_opt"], "title": "Segment Field", "description": "Segment by when people subscribed."}, "op": {"type": "string", "enum": ["date_within"], "title": "Segment Operator", "description": "Whe the event took place, namely within a time frame."}, "value": {"type": "string", "title": "Segment Data", "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."}}}]}}}}}}, "settings": {"type": "object", "title": "Campaign Settings", "description": "The settings for your campaign, including subject, from name, reply-to address, and more.", "properties": {"subject_line": {"type": "string", "title": "Campaign Subject Line", "description": "The subject line for the campaign."}, "preview_text": {"type": "string", "title": "Campaign Preview Text", "description": "The preview text for the campaign."}, "title": {"type": "string", "title": "Campaign Title", "description": "The title of the campaign."}, "from_name": {"type": "string", "title": "From Name", "description": "The \'from\' name on the campaign (not an email address)."}, "reply_to": {"type": "string", "title": "Reply To Address", "description": "The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending."}, "use_conversation": {"type": "boolean", "title": "Conversation", "description": "Use Mailchimp Conversation feature to manage out-of-office replies."}, "to_name": {"type": "string", "title": "To Name", "description": "The campaign\'s custom \'To\' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."}, "folder_id": {"type": "string", "title": "Folder ID", "description": "If the campaign is listed in a folder, the id for that folder."}, "authenticate": {"type": "boolean", "title": "Authentication", "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."}, "auto_footer": {"type": "boolean", "title": "Auto-Footer", "description": "Automatically append Mailchimp\'s [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."}, "inline_css": {"type": "boolean", "title": "Inline CSS", "description": "Automatically inline the CSS included with the campaign content."}, "auto_tweet": {"type": "boolean", "title": "Auto-Tweet", "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."}, "auto_fb_post": {"type": "array", "title": "Auto Post to Facebook", "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.", "items": {"type": "string"}}, "fb_comments": {"type": "boolean", "title": "Facebook Comments", "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."}, "template_id": {"type": "integer", "title": "Template ID", "description": "The id of the template to use."}}}, "variate_settings": {"type": "object", "title": "A/B Test Options", "description": "The settings specific to A/B test campaigns.", "required": ["winner_criteria"], "properties": {"winner_criteria": {"type": "string", "title": "Winning Criteria", "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with \'manual\' as the winner_criteria, the winner must be chosen in the Mailchimp web application.", "enum": ["opens", "clicks", "manual", "total_revenue"]}, "wait_time": {"type": "integer", "title": "Wait Time", "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."}, "test_size": {"type": "integer", "title": "Test Size", "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."}, "subject_lines": {"type": "array", "title": "Subject Lines", "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.", "items": {"type": "string"}}, "send_times": {"type": "array", "title": "Send Times", "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.", "items": {"type": "string", "format": "date-time"}}, "from_names": {"type": "array", "title": "From Names", "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.", "items": {"type": "string"}}, "reply_to_addresses": {"type": "array", "title": "Reply To Addresses", "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.", "items": {"type": "string"}}}}, "tracking": {"type": "object", "title": "Campaign Tracking Options", "description": "The tracking options for a campaign.", "properties": {"opens": {"type": "boolean", "title": "Opens", "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."}, "html_clicks": {"type": "boolean", "title": "HTML Click Tracking", "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."}, "text_clicks": {"type": "boolean", "title": "Plain-Text Click Tracking", "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."}, "goal_tracking": {"type": "boolean", "title": "Mailchimp Goal Tracking", "description": "Deprecated"}, "ecomm360": {"type": "boolean", "title": "E-commerce Tracking", "description": "Whether to enable e-commerce tracking."}, "google_analytics": {"type": "string", "title": "Google Analytics Tracking", "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."}, "clicktale": {"type": "string", "title": "ClickTale Analytics Tracking", "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."}, "salesforce": {"type": "object", "title": "Salesforce CRM Tracking", "description": "Deprecated", "properties": {"campaign": {"type": "boolean", "title": "Salesforce Campaign", "description": "Create a campaign in a connected Salesforce account."}, "notes": {"type": "boolean", "title": "Salesforce Note", "description": "Update contact notes for a campaign based on subscriber email addresses."}}}, "capsule": {"type": "object", "title": "Capsule CRM Tracking", "description": "Deprecated", "properties": {"notes": {"type": "boolean", "title": "Capsule Note", "description": "Update contact notes for a campaign based on subscriber email addresses."}}}}}, "rss_opts": {"type": "object", "title": "RSS Options", "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign.", "required": ["feed_url", "frequency"], "properties": {"feed_url": {"type": "string", "title": "Feed URL", "format": "uri", "description": "The URL for the RSS feed."}, "frequency": {"type": "string", "title": "Frequency", "description": "The frequency of the RSS Campaign.", "enum": ["daily", "weekly", "monthly"]}, "schedule": {"type": "object", "title": "Sending Schedule", "description": "The schedule for sending the RSS Campaign.", "properties": {"hour": {"type": "integer", "minimum": 0, "maximum": 23, "title": "Sending Hour", "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, \'4\' would be 4am in [your account\'s default time zone](https://mailchimp.com/help/set-account-defaults/)."}, "daily_send": {"type": "object", "title": "Daily Sending Days", "description": "The days of the week to send a daily RSS Campaign.", "properties": {"sunday": {"type": "boolean", "title": "Sunday", "description": "Sends the daily RSS Campaign on Sundays."}, "monday": {"type": "boolean", "title": "Monday", "description": "Sends the daily RSS Campaign on Mondays."}, "tuesday": {"type": "boolean", "title": "tuesday", "description": "Sends the daily RSS Campaign on Tuesdays."}, "wednesday": {"type": "boolean", "title": "Monday", "description": "Sends the daily RSS Campaign on Wednesdays."}, "thursday": {"type": "boolean", "title": "Thursday", "description": "Sends the daily RSS Campaign on Thursdays."}, "friday": {"type": "boolean", "title": "Friday", "description": "Sends the daily RSS Campaign on Fridays."}, "saturday": {"type": "boolean", "title": "Saturday", "description": "Sends the daily RSS Campaign on Saturdays."}}}, "weekly_send_day": {"type": "string", "enum": ["sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"], "title": "Weekly Sending Day", "description": "The day of the week to send a weekly RSS Campaign."}, "monthly_send_date": {"type": "number", "minimum": 0, "maximum": 31, "title": "Monthly Sending Day", "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where \'0\' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."}}}, "constrain_rss_img": {"type": "boolean", "title": "Constrain RSS Images", "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."}}}, "social_card": {"type": "object", "title": "Campaign Social Card", "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).", "properties": {"image_url": {"type": "string", "title": "Image URL", "description": "The url for the header image for the card."}, "description": {"type": "string", "title": "Campaign Description", "description": "A short summary of the campaign to display."}, "title": {"type": "string", "title": "Title", "description": "The title for the card. Typically the subject line of the campaign."}}}, "content_type": {"type": "string", "title": "Content Type", "description": "How the campaign\'s content is put together. The old drag and drop editor uses \'template\' while the new editor uses \'multichannel\'. Defaults to template.", "example": "template", "enum": ["template", "multichannel"]}}}', # noqa: E501
+ "UPDATECAMPAIGNSETTINGS": '{"type": "object", "title": "Campaign", "description": "A summary of an individual campaign\'s settings and content.", "required": ["settings"], "properties": {"recipients": {"type": "object", "title": "List", "description": "List settings for the campaign.", "required": ["list_id"], "properties": {"list_id": {"type": "string", "title": "List ID", "description": "The unique list id."}, "segment_opts": {"type": "object", "title": "Segment Options", "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.", "properties": {"saved_segment_id": {"type": "integer", "title": "Saved Segment ID", "description": "The id for an existing saved segment."}, "prebuilt_segment_id": {"type": "string", "title": "Prebuilt Segment Id", "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign.", "example": "subscribers-female"}, "match": {"type": "string", "title": "Match Type", "description": "Segment match type.", "enum": ["any", "all"]}, "conditions": {"type": "array", "title": "Segment Type", "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).", "items": {"x-discriminator": {"type": "string", "propertyName": "condition_type"}, "x-oneOf": [{"type": "object", "title": "Aim Segment", "description": "Segment by interaction with a specific campaign.", "properties": {"condition_type": {"type": "string", "x-value": "Aim", "enum": ["Aim"]}, "field": {"type": "string", "enum": ["aim"], "title": "Segment Field", "description": "Segment by interaction with a specific campaign.", "example": "aim"}, "op": {"type": "string", "enum": ["open", "click", "sent", "noopen", "noclick", "nosent"], "title": "Segment Operator", "description": "The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn\'t open, didn\'t click, or was not sent.", "example": "open"}, "value": {"type": "string", "title": "Segment Data", "description": "Either the web id value for a specific campaign or \'any\' to account for subscribers who have/have not interacted with any campaigns.", "example": "any"}}}, {"type": "object", "title": "Automation Segment", "description": "Segment by interaction with an Automation workflow.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Automation", "enum": ["Automation"]}, "field": {"type": "string", "enum": ["automation"], "title": "Segment Field", "description": "Segment by interaction with an Automation workflow.", "example": "automation"}, "op": {"type": "string", "enum": ["started", "completed", "not_started", "not_completed"], "title": "Segment Operator", "description": "The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.", "example": "started"}, "value": {"type": "string", "title": "Segment Data", "description": "The web id for the automation workflow to segment against.", "example": "2135217"}}}, {"type": "object", "title": "Poll Activity Segment", "description": "Segment by poll activity.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "CampaignPoll", "enum": ["CampaignPoll"]}, "field": {"type": "string", "enum": ["poll"], "title": "Segment Field", "description": "Segment by poll activity.", "example": "poll"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Members have/have not interacted with a specific poll in a Mailchimp email.", "example": "member"}, "value": {"type": "number", "title": "Segment Operator", "description": "The id for the poll.", "example": 409}}}, {"type": "object", "title": "Conversation Segment", "description": "Segment by interaction with a campaign via Conversations.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Conversation", "enum": ["Conversation"]}, "field": {"type": "string", "enum": ["conversation"], "title": "Segment Field", "description": "Segment by interaction with a campaign via Conversations.", "example": "conversation"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "The status of a member\'s interaction with a conversation. One of the following: has replied or has not replied.", "example": "member"}, "value": {"type": "string", "title": "Segment Data", "description": "The web id value for a specific campaign or \'any\' to account for subscribers who have/have not interacted with any campaigns.", "example": "any"}}}, {"type": "object", "title": "Date Segment", "description": "Segment by a specific date field.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Date", "enum": ["Date"]}, "field": {"type": "string", "enum": ["timestamp_opt", "info_changed", "ecomm_date"], "title": "Segment Field", "description": "The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.", "example": "timestamp_opt"}, "op": {"type": "string", "enum": ["greater", "less", "is", "not", "blank", "blank_not", "within", "notwithin"], "title": "Segment Operator", "description": "When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.", "example": "greater"}, "value": {"type": "string", "title": "Segment Data", "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.", "example": "date"}, "extra": {"type": "string", "title": "Segment Extra Value", "description": "When segmenting on \'date\' or \'campaign\', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.", "example": "2015-01-30"}}}, {"type": "object", "title": "Email Client Segment", "description": "Segment by use of a particular email client.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "EmailClient", "enum": ["EmailClient"]}, "field": {"type": "string", "enum": ["email_client"], "title": "Segment Field", "description": "Segment by use of a particular email client.", "example": "email_client"}, "op": {"type": "string", "enum": ["client_is", "client_not"], "title": "Segment Operator", "description": "The operation to determine whether we select clients that match the value, or clients that do not match the value.", "example": "client_is"}, "value": {"type": "string", "title": "Segment Data", "description": "The name of the email client.", "example": "Gmail"}}}, {"type": "object", "title": "Language Segment", "description": "Segment by language.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "Language", "enum": ["Language"]}, "field": {"type": "string", "enum": ["language"], "title": "Segment Field", "description": "Segmenting based off of a subscriber\'s language.", "example": "language"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Whether the member\'s language is or is not set to a specific language.", "example": "is"}, "value": {"type": "string", "title": "Segment Data", "description": "A two-letter language identifier.", "example": "en"}}}, {"type": "object", "title": "Member Rating Segment", "description": "Segment by member rating.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "MemberRating", "enum": ["MemberRating"]}, "field": {"type": "string", "enum": ["rating"], "title": "Segment Field", "description": "Segment by member rating.", "example": "rating"}, "op": {"type": "string", "enum": ["is", "not", "greater", "less"], "title": "Segment Operator", "description": "Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.", "example": "greater"}, "value": {"type": "number", "title": "Segment Operator", "description": "The star rating number to segment against.", "example": 4}}}, {"type": "object", "title": "Signup Source Segment", "description": "Segment by signup source.", "required": ["field", "condition_type", "op"], "properties": {"condition_type": {"type": "string", "enum": ["SignupSource"], "x-value": "SignupSource", "title": "Type"}, "field": {"type": "string", "enum": ["source"], "title": "Segment Field", "example": "source"}, "op": {"type": "string", "enum": ["source_is", "source_not"], "title": "Segment Operator", "description": "Whether the member\'s signup source was/was not a particular value.", "example": "source_is"}, "value": {"type": "string", "title": "Segment Data", "description": "The signup source.", "example": "List Import"}}}, {"type": "object", "title": "Survey Monkey Segment", "description": "Segment by interaction with a SurveyMonkey survey.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SurveyMonkey", "enum": ["SurveyMonkey"]}, "field": {"type": "string", "enum": ["survey_monkey"], "title": "Segment Field", "description": "Segment by interaction with a SurveyMonkey survey.", "example": "survey_monkey"}, "op": {"type": "string", "enum": ["started", "completed", "not_started", "not_completed"], "title": "Segment Operator", "description": "The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.", "example": "started"}, "value": {"type": "string", "title": "Survey ID", "description": "The unique ID of the survey monkey survey.", "example": "32179586"}}}, {"type": "object", "title": "VIP Segment", "description": "Segment by VIP status.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "VIP", "enum": ["VIP"]}, "field": {"type": "string", "enum": ["gmonkey"], "title": "Segment Field", "description": "Segment by VIP status.", "example": "gmonkey"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Whether the member is or is not marked as VIP.", "example": "member"}}}, {"type": "object", "title": "Interests Segment", "description": "Segment by an interest group merge field.", "properties": {"condition_type": {"type": "string", "x-value": "Interests", "enum": ["Interests"]}, "field": {"type": "string", "title": "Segment Field", "description": "Segmenting based on interest group information. This should start with \'interests-\' followed by the grouping id. Ex. \'interests-123\'.", "example": "interests-123"}, "op": {"type": "string", "enum": ["interestcontains", "interestcontainsall", "interestnotcontains"], "title": "Segment Operator", "description": "Whether the member is a part of one, all, or none of the groups.", "example": "interestcontains"}, "value": {"type": "array", "title": "Segment Value", "description": "An array containing strings, each representing a group id.", "items": {"type": "string", "example": ["44401", "44405", "44409"]}}}}, {"type": "object", "title": "Ecommerce Category Segment", "description": "Segment by purchases in specific items or categories.", "properties": {"condition_type": {"type": "string", "x-value": "EcommCategory", "enum": ["EcommCategory"]}, "field": {"type": "string", "enum": ["ecomm_cat", "ecomm_prod"], "title": "Segment Field", "description": "Segment by purchases in specific items or categories.", "example": "ecomm_cat"}, "op": {"type": "string", "enum": ["is", "not", "contains", "notcontain", "starts", "ends"], "title": "Segment Operator", "description": "A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn\'t contain a specific phrase or string, or a category/item name that starts/ends with a string.", "example": "is"}, "value": {"type": "string", "title": "Segment Data", "description": "The ecommerce category/item information.", "example": "Product"}}}, {"type": "object", "title": "Ecommerce Number Segment", "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "EcommNumber", "enum": ["EcommNumber"]}, "field": {"type": "string", "enum": ["ecomm_spent_avg", "ecomm_orders", "ecomm_prod_all", "ecomm_avg_ord"], "title": "Segment Field", "description": "Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.", "example": "ecomm_orders"}, "op": {"type": "string", "enum": ["is", "not", "greater", "less"], "title": "Segment Operator", "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.", "example": "greater"}, "value": {"type": "number", "title": "Segment Operator", "description": "Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.", "example": 42}}}, {"type": "object", "title": "Ecommerce Purchased Segment", "description": "Segment by whether someone has purchased anything.", "properties": {"condition_type": {"type": "string", "x-value": "EcommPurchased", "enum": ["EcommPurchased"]}, "field": {"type": "string", "enum": ["ecomm_purchased"], "title": "Segment Field", "description": "Segment by whether someone has purchased anything.", "example": "ecomm_purchased"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Members who have have (\'member\') or have not (\'notmember\') purchased.", "example": "member"}}}, {"type": "object", "title": "Ecommerce Spent Segment", "description": "Segment by amount spent on a single order or across all orders.", "properties": {"condition_type": {"type": "string", "x-value": "EcommSpent", "enum": ["EcommSpent"]}, "field": {"type": "string", "enum": ["ecomm_spent_one", "ecomm_spent_all"], "title": "Segment Field", "description": "Segment by amount spent on a single order or across all orders.", "example": "ecomm_spent_one"}, "op": {"type": "string", "enum": ["greater", "less"], "title": "Segment Operator", "description": "Members who have spent \'more\' or \'less\' than then specified value.", "example": "greater"}, "value": {"type": "integer", "title": "Segment Data", "description": "The total amount a member spent.", "example": 42}}}, {"type": "object", "title": "Ecommerce Purchased Store Segment", "description": "Segment by purchases from a specific store.", "properties": {"condition_type": {"type": "string", "x-value": "EcommStore", "enum": ["EcommStore"]}, "field": {"type": "string", "enum": ["ecomm_store"], "title": "Segment Field", "description": "Segment by purchases from a specific store.", "example": "ecomm_store"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who have or have not purchased from a specific store.", "example": "is"}, "value": {"type": "string", "title": "Segment Operator", "description": "The store id to segment against.", "example": "289"}}}, {"type": "object", "title": "Goal Activity Segment", "description": "Segment by Goal activity.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "GoalActivity", "enum": ["GoalActivity"]}, "field": {"type": "string", "enum": ["goal"], "title": "Segment Field", "description": "Segment by Goal activity.", "example": "goal"}, "op": {"type": "string", "enum": ["is", "goal_not", "contains", "goal_notcontain", "starts", "ends"], "title": "Segment Operator", "description": "Whether the website URL is/not exactly, contains/doesn\'t contain, starts with/ends with a string.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "The URL to check Goal activity against."}}}, {"type": "object", "title": "Goal Timestamp Segment", "description": "Segment by most recent interaction with a website.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "GoalTimestamp", "enum": ["GoalTimestamp"]}, "field": {"type": "string", "enum": ["goal_last_visited"], "title": "Segment Field", "description": "Segment by most recent interaction with a website.", "example": "goal_last_visited"}, "op": {"type": "string", "enum": ["greater", "less", "is"], "title": "Segment Operator", "description": "Whether the website activity happened after, before, or at a given timestamp.", "example": "greater"}, "value": {"type": "string", "title": "Segment Value", "description": "The date to check Goal activity against.", "example": "2015-07-20 19:45:21"}}}, {"type": "object", "title": "Similar Subscribers Segment Member Segment", "description": "Segment by similar subscribers.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "FuzzySegment", "enum": ["FuzzySegment"]}, "field": {"type": "string", "enum": ["fuzzy_segment"], "title": "Segment Field", "description": "Segment by similar subscribers.", "example": "fuzzy_segment"}, "op": {"type": "string", "enum": ["fuzzy_is", "fuzzy_not"], "title": "Segment Operator", "description": "Members who are/are not apart of a \'similar subscribers\' segment.", "example": "fuzzy_is"}, "value": {"type": "number", "title": "Segment Operator", "description": "The id for the \'similar subscribers\' segment.", "example": 48433}}}, {"type": "object", "title": "Static Segment Member Segment", "description": "Segment by a given static segment.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "StaticSegment", "enum": ["StaticSegment"]}, "field": {"type": "string", "enum": ["static_segment"], "title": "Segment Field", "description": "Segment by a given static segment.", "example": "static_segment"}, "op": {"type": "string", "enum": ["static_is", "static_not"], "title": "Segment Operator", "description": "Members who are/are not apart of a static segment.", "example": "static_is"}, "value": {"type": "number", "title": "Segment Operator", "description": "The id for the static segment.", "example": 48433}}}, {"type": "object", "title": "Location-Based Segment", "description": "Segment by a specific country or US state.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoCountryState", "enum": ["IPGeoCountryState"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeocountry", "ipgeonotcountry", "ipgeostate", "ipgeonotstate"], "title": "Segment Operator", "description": "Segment members who are within a specific country or US state.", "example": "ipgeocountry"}, "value": {"type": "string", "title": "Segment Data", "description": "The two-letter country code or US state abbreviation.", "example": "US"}}}, {"type": "object", "title": "Geolocation Segment", "description": "Segment by a specific geographic region.", "required": ["field", "op", "value", "addr", "lat", "lng"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoIn", "enum": ["IPGeoIn"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeoin", "ipgeonotin"], "title": "Segment Operator", "description": "Segment members who are within a specific geographic region.", "example": "ipgeoin"}, "value": {"type": "integer", "title": "Segment Data", "description": "The radius of the target location.", "example": 42}, "addr": {"type": "string", "title": "Segment Location Address", "description": "The address of the target location.", "example": "Atlanta, GA, USA"}, "lat": {"type": "string", "title": "Segment Location Latitude", "description": "The latitude of the target location.", "example": "33.7489954"}, "lng": {"type": "string", "title": "Segment Location Longitude", "description": "The longitude of the target location.", "example": "-84.3879824"}}}, {"type": "object", "title": "US Zip Code Segment", "description": "Segment by a specific US ZIP code.", "required": ["field", "op", "value", "extra"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoInZip", "enum": ["IPGeoInZip"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeoinzip"], "title": "Segment Operator", "description": "Segment members who are within a specific US zip code.", "example": "ipgeoinzip"}, "value": {"type": "integer", "title": "Segment Data", "description": "The radius of the target location.", "example": 25}, "extra": {"type": "integer", "title": "Extra Data", "description": "The zip code to segment against.", "example": 30318}}}, {"type": "object", "title": "Unknown Location-Based Segment", "description": "Segment members whose location information is unknown.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoUnknown", "enum": ["IPGeoUnknown"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeounknown"], "title": "Segment Operator", "description": "Segment members for which location information is unknown.", "example": "ipgeounknown"}}}, {"type": "object", "title": "Zip Code Location-Based Segment", "description": "Segment by a specific US ZIP code.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "IPGeoZip", "enum": ["IPGeoZip"]}, "field": {"type": "string", "enum": ["ipgeo"], "title": "Segment Field", "description": "Segmenting subscribers who are within a specific location.", "example": "ipgeo"}, "op": {"type": "string", "enum": ["ipgeoiszip", "ipgeonotzip"], "title": "Segment Operator", "description": "Segment members who are/are not within a specific US zip code.", "example": "ipgeonotzip"}, "value": {"type": "integer", "title": "Segment Data", "description": "The 5-digit zip code.", "example": 30318}}}, {"type": "object", "title": "Social Profiles Age Segment", "description": "Segment by age ranges in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialAge", "enum": ["SocialAge"]}, "field": {"type": "string", "enum": ["social_age"], "title": "Segment Field", "description": "Segment by age ranges in Social Profiles data.", "example": "social_age"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["18-24", "25-34", "35-54", "55+"], "title": "Segment Operator", "description": "The age range to segment.", "example": "35-54"}}}, {"type": "object", "title": "Social Profiles Gender Segment", "description": "Segment by listed gender in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialGender", "enum": ["SocialGender"]}, "field": {"type": "string", "enum": ["social_gender"], "title": "Segment Field", "description": "Segment by listed gender in Social Profiles data.", "example": "social_gender"}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["male", "female"], "title": "Segment Operator", "description": "The Social Profiles gender to segment.", "example": "female"}}}, {"type": "object", "title": "Social Profiles Influence Segment", "description": "Segment by influence rating in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialInfluence", "enum": ["SocialInfluence"]}, "field": {"type": "string", "enum": ["social_influence"], "title": "Segment Field", "description": "Segment by influence rating in Social Profiles data.", "example": "social_influence"}, "op": {"type": "string", "enum": ["is", "not", "greater", "less"], "title": "Segment Operator", "description": "Members who have a rating that is/not or greater/less than the rating provided.", "example": "greater"}, "value": {"type": "number", "title": "Segment Operator", "description": "The Social Profiles influence rating to segment.", "example": 2}}}, {"type": "object", "title": "Social Profiles Social Network Segment", "description": "Segment by social network in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialNetworkMember", "enum": ["SocialNetworkMember"]}, "field": {"type": "string", "enum": ["social_network"], "title": "Segment Field", "description": "Segment by social network in Social Profiles data.", "example": "social_network"}, "op": {"type": "string", "enum": ["member", "notmember"], "title": "Segment Operator", "description": "Members who are/not on a given social network.", "example": "member"}, "value": {"type": "string", "enum": ["twitter", "facebook", "linkedin", "flickr", "foursquare", "lastfm", "myspace", "quora", "vimeo", "yelp", "youtube"], "title": "Segment Operator", "description": "The social network to segment against.", "example": "twitter"}}}, {"type": "object", "title": "Social Profiles Social Network Follow Segment", "description": "Segment by social network in Social Profiles data.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "SocialNetworkFollow", "enum": ["SocialNetworkFollow"]}, "field": {"type": "string", "enum": ["social_network"], "title": "Segment Field", "description": "Segment by social network in Social Profiles data.", "example": "social_network"}, "op": {"type": "string", "enum": ["follow", "notfollow"], "title": "Segment Operator", "description": "Members who are/not following a linked account on a given social network.", "example": "follow"}, "value": {"type": "string", "enum": ["twitter_follow"], "title": "Segment Operator", "description": "The social network to segment against.", "example": "twitter_follow"}}}, {"type": "object", "title": "Address Merge Field Segment", "description": "Segment by an address-type merge field.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "AddressMerge", "enum": ["AddressMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "An address-type merge field to segment.", "example": "MMERGE3"}, "op": {"type": "string", "enum": ["contains", "notcontain", "blank", "blank_not"], "title": "Segment Operator", "description": "Whether the member\'s address merge field contains/does not contain a value or is/is not blank.", "example": "contains"}, "value": {"type": "string", "title": "Segment Value", "description": "The value to segment a text merge field with.", "example": "Atlanta"}}}, {"type": "object", "title": "Address/Zip Merge Field Segment", "description": "Segment by an address-type merge field within a given distance.", "required": ["field", "op", "value", "extra"], "properties": {"condition_type": {"type": "string", "x-value": "ZipMerge", "enum": ["ZipMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "An address or zip-type merge field to segment.", "example": "MMERGE2"}, "op": {"type": "string", "enum": ["geoin"], "title": "Segment Operator", "description": "Whether the member\'s address merge field is within a given distance from a city or zip.", "example": "geoin"}, "value": {"type": "string", "title": "Segment Value", "description": "The distance from the city/zip.", "example": "25"}, "extra": {"type": "string", "title": "Segment Extra", "description": "The city or the zip being used to segment against.", "example": "30318"}}}, {"type": "object", "title": "Birthday Merge Field Segment", "description": "Segment by a contact\'s birthday.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "BirthdayMerge", "enum": ["BirthdayMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A date merge field to segment.", "example": "MMERGE4"}, "op": {"type": "string", "enum": ["is", "not", "blank", "blank_not"], "title": "Segment Operator", "description": "Whether the member\'s birthday merge information is/is not a certain date or is/is not blank.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "A date to segment against (mm/dd).", "example": "01/30"}}}, {"type": "object", "title": "Date Merge Field Segment", "description": "Segment by a given date merge field.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "DateMerge", "enum": ["DateMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A date merge field to segment.", "example": "MMERGE5"}, "op": {"type": "string", "enum": ["is", "not", "less", "blank", "blank_not", "greater"], "title": "Segment Operator", "description": "Whether the member\'s merge information is/is not, is greater/less than a value or is/is not blank.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "A date to segment against.", "example": "01/30/2015"}}}, {"type": "object", "title": "Dropdown/Radio Merge Field Segment", "description": "An individual segment condition", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "SelectMerge", "enum": ["SelectMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A merge field to segment.", "example": "MMERGE6"}, "op": {"type": "string", "enum": ["is", "not", "blank", "blank_not", "notcontain", "contains"], "title": "Segment Operator", "description": "Whether the member\'s merge information is/is not a value or is/is not blank.", "example": "is"}, "value": {"type": "string", "title": "Segment Value", "description": "The value to segment a text merge field with.", "example": "Second Choice"}}}, {"type": "object", "title": "Text or Number Merge Field Segment", "description": "Segment by a given text or number merge field.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "TextMerge", "enum": ["TextMerge"]}, "field": {"type": "string", "title": "Segment Field", "description": "A text or number merge field to segment.", "example": "MMERGE7"}, "op": {"type": "string", "enum": ["is", "not", "contains", "notcontain", "starts", "ends", "greater", "less", "blank", "blank_not"], "title": "Segment Operator", "description": "Whether the member\'s merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value", "example": "contains"}, "value": {"type": "string", "title": "Segment Value", "description": "The value to segment a text or number merge field with.", "example": "Freddie\'s Jokes"}}}, {"type": "object", "title": "Email Segment", "description": "Segment by email address.", "required": ["field", "op"], "properties": {"condition_type": {"type": "string", "x-value": "EmailAddress", "enum": ["EmailAddress"]}, "field": {"type": "string", "enum": ["merge0", "EMAIL"], "title": "Segment Field", "description": "Segmenting based off of a subscriber\'s email address.", "example": "EMAIL"}, "op": {"type": "string", "enum": ["is", "not", "contains", "notcontain", "starts", "ends", "greater", "less"], "title": "Segment Operator", "description": "Whether the email address is/not exactly, contains/doesn\'t contain, starts/ends with a string."}, "value": {"type": "string", "title": "Segment Value", "description": "The value to compare the email against.", "example": "urist.mcvankab@freddiesjokes.com"}}}, {"type": "object", "title": "Predicted Gender Segment", "description": "Segment by predicted gender.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "PredictedGender", "enum": ["PredictedGender"]}, "field": {"type": "string", "enum": ["predicted_gender"], "title": "Segment Field", "description": "Segment by predicted gender."}, "op": {"type": "string", "enum": ["is", "not"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["male", "female"], "title": "Segment Operator", "description": "The predicted gender to segment.", "example": "female"}}}, {"type": "object", "title": "Predicted Age Segment", "description": "Segment by predicted age.", "required": ["field", "op", "value"], "properties": {"condition_type": {"type": "string", "x-value": "PredictedAge", "enum": ["PredictedAge"]}, "field": {"type": "string", "enum": ["predicted_age_range"], "title": "Segment Field", "description": "Segment by predicted age."}, "op": {"type": "string", "enum": ["is"], "title": "Segment Operator", "description": "Members who are/not the exact criteria listed.", "example": "is"}, "value": {"type": "string", "enum": ["18-24", "25-34", "35-44", "45-54", "55-64", "65+"], "title": "Segment Operator", "description": "The predicted age to segment.", "example": "female"}}}, {"type": "object", "title": "New Subscribers Prebuilt Segment", "description": "Segment by when people subscribed.", "properties": {"condition_type": {"type": "string", "x-value": "NewSubscribers", "enum": ["NewSubscribers"]}, "field": {"type": "string", "enum": ["timestamp_opt"], "title": "Segment Field", "description": "Segment by when people subscribed."}, "op": {"type": "string", "enum": ["date_within"], "title": "Segment Operator", "description": "Whe the event took place, namely within a time frame."}, "value": {"type": "string", "title": "Segment Data", "description": "What type of data to segment on: a specific date, a specific campaign, or the last campaign sent."}}}]}}}}}}, "settings": {"type": "object", "title": "Campaign Settings", "description": "The settings for your campaign, including subject, from name, reply-to address, and more.", "required": ["subject_line", "from_name", "reply_to"], "properties": {"subject_line": {"type": "string", "title": "Campaign Subject Line", "description": "The subject line for the campaign."}, "preview_text": {"type": "string", "title": "Campaign Preview Text", "description": "The preview text for the campaign."}, "title": {"type": "string", "title": "Campaign Title", "description": "The title of the campaign."}, "from_name": {"type": "string", "title": "From Name", "description": "The \'from\' name on the campaign (not an email address)."}, "reply_to": {"type": "string", "title": "Reply To Address", "description": "The reply-to email address for the campaign."}, "use_conversation": {"type": "boolean", "title": "Conversation", "description": "Use Mailchimp Conversation feature to manage out-of-office replies."}, "to_name": {"type": "string", "title": "To Name", "description": "The campaign\'s custom \'To\' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."}, "folder_id": {"type": "string", "title": "Folder ID", "description": "If the campaign is listed in a folder, the id for that folder."}, "authenticate": {"type": "boolean", "title": "Authentication", "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."}, "auto_footer": {"type": "boolean", "title": "Auto-Footer", "description": "Automatically append Mailchimp\'s [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."}, "inline_css": {"type": "boolean", "title": "Inline CSS", "description": "Automatically inline the CSS included with the campaign content."}, "auto_tweet": {"type": "boolean", "title": "Auto-Tweet", "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."}, "auto_fb_post": {"type": "array", "title": "Auto Post to Facebook", "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.", "items": {"type": "string"}}, "fb_comments": {"type": "boolean", "title": "Facebook Comments", "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."}, "template_id": {"type": "integer", "title": "Template ID", "description": "The id of the template to use."}}}, "variate_settings": {"type": "object", "title": "A/B Test Options", "description": "The settings specific to A/B test campaigns.", "required": ["winner_criteria"], "properties": {"winner_criteria": {"type": "string", "title": "Winning Criteria", "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with \'manual\' as the winner_criteria, the winner must be chosen in the Mailchimp web application.", "enum": ["opens", "clicks", "manual", "total_revenue"]}, "wait_time": {"type": "integer", "title": "Wait Time", "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."}, "test_size": {"type": "integer", "title": "Test Size", "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."}, "subject_lines": {"type": "array", "title": "Subject Lines", "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.", "items": {"type": "string"}}, "send_times": {"type": "array", "title": "Send Times", "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.", "items": {"type": "string", "format": "date-time"}}, "from_names": {"type": "array", "title": "From Names", "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.", "items": {"type": "string"}}, "reply_to_addresses": {"type": "array", "title": "Reply To Addresses", "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.", "items": {"type": "string"}}}}, "tracking": {"type": "object", "title": "Campaign Tracking Options", "description": "The tracking options for a campaign.", "properties": {"opens": {"type": "boolean", "title": "Opens", "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."}, "html_clicks": {"type": "boolean", "title": "HTML Click Tracking", "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."}, "text_clicks": {"type": "boolean", "title": "Plain-Text Click Tracking", "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."}, "goal_tracking": {"type": "boolean", "title": "Mailchimp Goal Tracking", "description": "Deprecated"}, "ecomm360": {"type": "boolean", "title": "E-commerce Tracking", "description": "Whether to enable e-commerce tracking."}, "google_analytics": {"type": "string", "title": "Google Analytics Tracking", "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."}, "clicktale": {"type": "string", "title": "ClickTale Analytics Tracking", "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."}, "salesforce": {"type": "object", "title": "Salesforce CRM Tracking", "description": "Deprecated", "properties": {"campaign": {"type": "boolean", "title": "Salesforce Campaign", "description": "Create a campaign in a connected Salesforce account."}, "notes": {"type": "boolean", "title": "Salesforce Note", "description": "Update contact notes for a campaign based on subscriber email addresses."}}}, "capsule": {"type": "object", "title": "Capsule CRM Tracking", "description": "Deprecated", "properties": {"notes": {"type": "boolean", "title": "Capsule Note", "description": "Update contact notes for a campaign based on subscriber email addresses."}}}}}, "rss_opts": {"type": "object", "title": "RSS Options", "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.", "required": ["feed_url", "frequency"], "properties": {"feed_url": {"type": "string", "title": "Feed URL", "format": "uri", "description": "The URL for the RSS feed."}, "frequency": {"type": "string", "title": "Frequency", "description": "The frequency of the RSS Campaign.", "enum": ["daily", "weekly", "monthly"]}, "schedule": {"type": "object", "title": "Sending Schedule", "description": "The schedule for sending the RSS Campaign.", "properties": {"hour": {"type": "integer", "minimum": 0, "maximum": 23, "title": "Sending Hour", "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, \'4\' would be 4am in [your account\'s default time zone](https://mailchimp.com/help/set-account-defaults/)."}, "daily_send": {"type": "object", "title": "Daily Sending Days", "description": "The days of the week to send a daily RSS Campaign.", "properties": {"sunday": {"type": "boolean", "title": "Sunday", "description": "Sends the daily RSS Campaign on Sundays."}, "monday": {"type": "boolean", "title": "Monday", "description": "Sends the daily RSS Campaign on Mondays."}, "tuesday": {"type": "boolean", "title": "tuesday", "description": "Sends the daily RSS Campaign on Tuesdays."}, "wednesday": {"type": "boolean", "title": "Monday", "description": "Sends the daily RSS Campaign on Wednesdays."}, "thursday": {"type": "boolean", "title": "Thursday", "description": "Sends the daily RSS Campaign on Thursdays."}, "friday": {"type": "boolean", "title": "Friday", "description": "Sends the daily RSS Campaign on Fridays."}, "saturday": {"type": "boolean", "title": "Saturday", "description": "Sends the daily RSS Campaign on Saturdays."}}}, "weekly_send_day": {"type": "string", "enum": ["sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"], "title": "Weekly Sending Day", "description": "The day of the week to send a weekly RSS Campaign."}, "monthly_send_date": {"type": "number", "minimum": 0, "maximum": 31, "title": "Monthly Sending Day", "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where \'0\' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."}}}, "constrain_rss_img": {"type": "boolean", "title": "Constrain RSS Images", "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."}}}, "social_card": {"type": "object", "title": "Campaign Social Card", "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).", "properties": {"image_url": {"type": "string", "title": "Image URL", "description": "The url for the header image for the card."}, "description": {"type": "string", "title": "Campaign Description", "description": "A short summary of the campaign to display."}, "title": {"type": "string", "title": "Title", "description": "The title for the card. Typically the subject line of the campaign."}}}}}', # noqa: E501
+ "SETCAMPAIGNCONTENT": '{"type": "object", "title": "Campaign Content", "description": "The HTML and plain-text content for a campaign", "properties": {"plain_text": {"type": "string", "title": "Plain Text", "description": "The plain-text portion of the campaign. If left unspecified, we\'ll generate this automatically."}, "html": {"type": "string", "title": "Campaign HTML", "description": "The raw HTML for the campaign."}, "url": {"type": "string", "title": "Campaign URL", "description": "When importing a campaign, the URL where the HTML lives."}, "template": {"type": "object", "title": "Template Content", "description": "Use this template to generate the HTML content of the campaign", "required": ["id"], "properties": {"id": {"type": "integer", "title": "Template ID", "description": "The id of the template to use."}, "sections": {"type": "object", "title": "Template Sections", "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."}}}, "archive": {"type": "object", "title": "Upload Archive", "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).", "required": ["archive_content"], "properties": {"archive_content": {"type": "string", "title": "Archive Content", "description": "The base64-encoded representation of the archive file."}, "archive_type": {"type": "string", "enum": ["zip", "tar.gz", "tar.bz2", "tar", "tgz", "tbz"], "title": "Archive Type", "description": "The type of encoded file. Defaults to zip."}}}, "variate_contents": {"type": "array", "title": "Variate Contents", "description": "Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided.", "items": {"type": "object", "required": ["content_label"], "properties": {"content_label": {"type": "string", "title": "Content Label", "description": "The label used to identify the content option."}, "plain_text": {"type": "string", "title": "Plain Text", "description": "The plain-text portion of the campaign. If left unspecified, we\'ll generate this automatically."}, "html": {"type": "string", "title": "Campaign HTML", "description": "The raw HTML for the campaign."}, "url": {"type": "string", "title": "Campaign URL", "description": "When importing a campaign, the URL for the HTML."}, "template": {"type": "object", "title": "Template Content", "description": "Use this template to generate the HTML content for the campaign.", "required": ["id"], "properties": {"id": {"type": "integer", "title": "Template ID", "description": "The id of the template to use."}, "sections": {"type": "object", "title": "Template Sections", "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."}}}, "archive": {"type": "object", "title": "Upload Archive", "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).", "required": ["archive_content"], "properties": {"archive_content": {"type": "string", "title": "Archive Content", "description": "The base64-encoded representation of the archive file."}, "archive_type": {"type": "string", "enum": ["zip", "tar.gz", "tar.bz2", "tar", "tgz", "tbz"], "title": "Archive Type", "description": "The type of encoded file. Defaults to zip."}}}}}}}}', # noqa: E501
+ "CREATEMAILCHIMPLIST": '{"type": "object", "title": "Subscriber List", "description": "Information about a specific list.", "required": ["name", "permission_reminder", "email_type_option", "contact", "campaign_defaults"], "properties": {"name": {"type": "string", "title": "List Name", "description": "The name of the list."}, "contact": {"type": "object", "title": "List Contact", "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.", "required": ["company", "address1", "city", "country"], "properties": {"company": {"type": "string", "title": "Company Name", "description": "The company name for the list."}, "address1": {"type": "string", "title": "Address", "description": "The street address for the list contact."}, "address2": {"type": "string", "title": "Address", "description": "The street address for the list contact."}, "city": {"type": "string", "title": "City", "description": "The city for the list contact."}, "state": {"type": "string", "title": "State", "description": "The state for the list contact."}, "zip": {"type": "string", "title": "Postal Code", "description": "The postal or zip code for the list contact."}, "country": {"type": "string", "title": "Country Code", "description": "A two-character ISO3166 country code. Defaults to US if invalid."}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the list contact."}}}, "permission_reminder": {"type": "string", "title": "Permission Reminder", "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."}, "use_archive_bar": {"type": "boolean", "title": "Use Archive Bar", "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.", "default": false}, "campaign_defaults": {"type": "object", "title": "Campaign Defaults", "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.", "required": ["from_name", "from_email", "subject", "language"], "properties": {"from_name": {"type": "string", "title": "Sender\'s Name", "description": "The default from name for campaigns sent to this list."}, "from_email": {"type": "string", "title": "Sender\'s Email Address", "description": "The default from email for campaigns sent to this list."}, "subject": {"type": "string", "title": "Subject", "description": "The default subject line for campaigns sent to this list."}, "language": {"type": "string", "title": "Language", "description": "The default language for this lists\'s forms."}}}, "notify_on_subscribe": {"type": "string", "title": "Notify on Subscribe", "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.", "default": false}, "notify_on_unsubscribe": {"type": "string", "title": "Notify on Unsubscribe", "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.", "default": false}, "email_type_option": {"type": "boolean", "title": "Email Type Option", "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."}, "double_optin": {"type": "boolean", "title": "Double Opt In", "description": "Whether or not to require the subscriber to confirm subscription via email.", "default": false}, "marketing_permissions": {"type": "boolean", "title": "Marketing Permissions", "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.", "default": false}}}', # noqa: E501
+ "UPDATEMAILCHIMPLISTSETTINGS": '{"type": "object", "title": "Subscriber List", "description": "Information about a specific list.", "required": ["name", "permission_reminder", "email_type_option", "contact", "campaign_defaults"], "properties": {"name": {"type": "string", "title": "List Name", "description": "The name of the list."}, "contact": {"type": "object", "title": "List Contact", "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.", "required": ["company", "address1", "city", "state", "zip", "country"], "properties": {"company": {"type": "string", "title": "Company Name", "description": "The company name for the list."}, "address1": {"type": "string", "title": "Address", "description": "The street address for the list contact."}, "address2": {"type": "string", "title": "Address", "description": "The street address for the list contact."}, "city": {"type": "string", "title": "City", "description": "The city for the list contact."}, "state": {"type": "string", "title": "State", "description": "The state for the list contact."}, "zip": {"type": "string", "title": "Postal Code", "description": "The postal or zip code for the list contact."}, "country": {"type": "string", "title": "Country Code", "description": "A two-character ISO3166 country code. Defaults to US if invalid."}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the list contact."}}}, "permission_reminder": {"type": "string", "title": "Permission Reminder", "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."}, "use_archive_bar": {"type": "boolean", "title": "Use Archive Bar", "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.", "default": false}, "campaign_defaults": {"type": "object", "title": "Campaign Defaults", "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.", "required": ["from_name", "from_email", "subject", "language"], "properties": {"from_name": {"type": "string", "title": "Sender\'s Name", "description": "The default from name for campaigns sent to this list."}, "from_email": {"type": "string", "title": "Sender\'s Email Address", "description": "The default from email for campaigns sent to this list."}, "subject": {"type": "string", "title": "Subject", "description": "The default subject line for campaigns sent to this list."}, "language": {"type": "string", "title": "Language", "description": "The default language for this lists\'s forms."}}}, "notify_on_subscribe": {"type": "string", "title": "Notify on Subscribe", "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.", "default": false}, "notify_on_unsubscribe": {"type": "string", "title": "Notify on Unsubscribe", "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.", "default": false}, "email_type_option": {"type": "boolean", "title": "Email Type Option", "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."}, "double_optin": {"type": "boolean", "title": "Double Opt In", "description": "Whether or not to require the subscriber to confirm subscription via email.", "default": false}, "marketing_permissions": {"type": "boolean", "title": "Marketing Permissions", "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled.", "default": false}}}', # noqa: E501
+ "MANAGEMAILCHIMPLISTMEMBERS": '{"type": "object", "title": "Members to Subscribe/Unsubscribe to/from a List in batch", "description": "Members to subscribe to or unsubscribe from a list.", "required": ["members"], "properties": {"members": {"type": "array", "title": "List Members", "description": "An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call.", "items": {"type": "object", "title": "Add List Members", "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.", "properties": {"email_address": {"type": "string", "title": "Email Address", "description": "Email address for a subscriber."}, "email_type": {"type": "string", "title": "Email Type", "description": "Type of email this member asked to get (\'html\' or \'text\')."}, "status": {"type": "string", "title": "Status", "description": "Subscriber\'s current status.", "enum": ["subscribed", "unsubscribed", "cleaned", "pending", "transactional"]}, "merge_fields": {"type": "object", "title": "Merge Fields", "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.", "additionalProperties": {"description": "This object\'s keys are merge tags (like FNAME). It\'s values are the values to be added to the merge field."}}, "interests": {"type": "object", "title": "Subscriber Interests", "description": "The key of this object\'s properties is the ID of the interest in question.", "additionalProperties": {"type": "boolean", "title": "Interest Value", "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."}}, "language": {"type": "string", "title": "Language", "description": "If set/detected, the [subscriber\'s language](https://mailchimp.com/help/view-and-edit-contact-languages/)."}, "vip": {"type": "boolean", "title": "VIP", "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."}, "location": {"type": "object", "title": "Location", "description": "Subscriber location information.", "properties": {"latitude": {"type": "number", "title": "Latitude", "description": "The location latitude."}, "longitude": {"type": "number", "title": "Longitude", "description": "The location longitude."}}}, "ip_signup": {"type": "string", "title": "Signup IP", "description": "IP address the subscriber signed up from."}, "timestamp_signup": {"type": "string", "title": "Signup Timestamp", "description": "The date and time the subscriber signed up for the list in ISO 8601 format.", "format": "date-time"}, "ip_opt": {"type": "string", "title": "Opt-in IP", "description": "The IP address the subscriber used to confirm their opt-in status."}, "timestamp_opt": {"type": "string", "title": "Opt-in Timestamp", "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.", "format": "date-time"}}}}, "sync_tags": {"type": "boolean", "title": "Sync Tags", "description": "Whether this batch operation will replace all existing tags with tags in request."}, "update_existing": {"type": "boolean", "title": "Update Existing Members", "description": "Whether this batch operation will change existing members\' subscription status."}}}', # noqa: E501
+ "ADDMEMBERTOMAILCHIMPLIST": '{"type": "object", "title": "Add List Members", "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.", "required": ["email_address", "status"], "properties": {"email_address": {"type": "string", "title": "Email Address", "description": "Email address for a subscriber."}, "email_type": {"type": "string", "title": "Email Type", "description": "Type of email this member asked to get (\'html\' or \'text\')."}, "status": {"type": "string", "title": "Status", "description": "Subscriber\'s current status.", "enum": ["subscribed", "unsubscribed", "cleaned", "pending", "transactional"]}, "merge_fields": {"type": "object", "title": "Merge Fields", "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.", "additionalProperties": {"description": "This object\'s keys are merge tags (like FNAME). It\'s values are the values to be added to the merge field."}}, "interests": {"type": "object", "title": "Subscriber Interests", "description": "The key of this object\'s properties is the ID of the interest in question.", "additionalProperties": {"type": "boolean", "title": "Interest Value", "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."}}, "language": {"type": "string", "title": "Language", "description": "If set/detected, the [subscriber\'s language](https://mailchimp.com/help/view-and-edit-contact-languages/)."}, "vip": {"type": "boolean", "title": "VIP", "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."}, "location": {"type": "object", "title": "Location", "description": "Subscriber location information.", "properties": {"latitude": {"type": "number", "title": "Latitude", "description": "The location latitude."}, "longitude": {"type": "number", "title": "Longitude", "description": "The location longitude."}}}, "marketing_permissions": {"type": "array", "title": "Marketing Permissions", "description": "The marketing permissions for the subscriber.", "items": {"type": "object", "title": "Marketing Permission", "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.", "properties": {"marketing_permission_id": {"type": "string", "title": "Marketing Permission ID", "description": "The id for the marketing permission on the list"}, "enabled": {"type": "boolean", "title": "Enabled", "description": "If the subscriber has opted-in to the marketing permission."}}}}, "ip_signup": {"type": "string", "title": "Signup IP", "description": "IP address the subscriber signed up from."}, "timestamp_signup": {"type": "string", "title": "Signup Timestamp", "description": "The date and time the subscriber signed up for the list in ISO 8601 format.", "format": "date-time"}, "ip_opt": {"type": "string", "title": "Opt-in IP", "description": "The IP address the subscriber used to confirm their opt-in status."}, "timestamp_opt": {"type": "string", "title": "Opt-in Timestamp", "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.", "format": "date-time"}, "tags": {"type": "array", "title": "Tags on a member", "description": "The tags that are associated with a member.", "items": {"type": "string", "description": "The name of the tag that will be associated with this member."}}}}', # noqa: E501
+ "ADDORUPDATELISTMEMBER": '{"type": "object", "title": "Add List Members", "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.", "required": ["email_address", "status_if_new"], "properties": {"email_address": {"type": "string", "title": "Email Address", "description": "Email address for a subscriber. This value is required only if the email address is not already present on the list."}, "status_if_new": {"type": "string", "title": "New Member Status", "description": "Subscriber\'s status. This value is required only if the email address is not already present on the list.", "enum": ["subscribed", "unsubscribed", "cleaned", "pending", "transactional"]}, "email_type": {"type": "string", "title": "Email Type", "description": "Type of email this member asked to get (\'html\' or \'text\')."}, "status": {"type": "string", "title": "Status", "description": "Subscriber\'s current status.", "enum": ["subscribed", "unsubscribed", "cleaned", "pending", "transactional"]}, "merge_fields": {"type": "object", "title": "Merge Fields", "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.", "additionalProperties": {"description": "This object\'s keys are merge tags (like FNAME). It\'s values are the values to be added to the merge field."}}, "interests": {"type": "object", "title": "Subscriber Interests", "description": "The key of this object\'s properties is the ID of the interest in question.", "additionalProperties": {"type": "boolean", "title": "Interest Value", "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."}}, "language": {"type": "string", "title": "Language", "description": "If set/detected, the [subscriber\'s language](https://mailchimp.com/help/view-and-edit-contact-languages/)."}, "vip": {"type": "boolean", "title": "VIP", "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."}, "location": {"type": "object", "title": "Location", "description": "Subscriber location information.", "properties": {"latitude": {"type": "number", "title": "Latitude", "description": "The location latitude."}, "longitude": {"type": "number", "title": "Longitude", "description": "The location longitude."}}}, "marketing_permissions": {"type": "array", "title": "Marketing Permissions", "description": "The marketing permissions for the subscriber.", "items": {"type": "object", "title": "Marketing Permission", "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.", "properties": {"marketing_permission_id": {"type": "string", "title": "Marketing Permission ID", "description": "The id for the marketing permission on the list"}, "enabled": {"type": "boolean", "title": "Enabled", "description": "If the subscriber has opted-in to the marketing permission."}}}}, "ip_signup": {"type": "string", "title": "Signup IP", "description": "IP address the subscriber signed up from."}, "timestamp_signup": {"type": "string", "title": "Signup Timestamp", "description": "The date and time the subscriber signed up for the list in ISO 8601 format.", "format": "date-time"}, "ip_opt": {"type": "string", "title": "Opt-in IP", "description": "The IP address the subscriber used to confirm their opt-in status."}, "timestamp_opt": {"type": "string", "title": "Opt-in Timestamp", "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.", "format": "date-time"}}}', # noqa: E501
+ "UPDATELISTMEMBERINFO": '{"type": "object", "title": "Add List Members", "description": "Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.", "properties": {"email_address": {"type": "string", "title": "Email Address", "description": "Email address for a subscriber."}, "email_type": {"type": "string", "title": "Email Type", "description": "Type of email this member asked to get (\'html\' or \'text\')."}, "status": {"type": "string", "title": "Status", "description": "Subscriber\'s current status.", "enum": ["subscribed", "unsubscribed", "cleaned", "pending"]}, "merge_fields": {"type": "object", "title": "Merge Fields", "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.", "additionalProperties": {"description": "This object\'s keys are merge tags (like FNAME). It\'s values are the values to be added to the merge field."}}, "interests": {"type": "object", "title": "Subscriber Interests", "description": "The key of this object\'s properties is the ID of the interest in question.", "additionalProperties": {"type": "boolean", "title": "Interest Value", "description": "Keys are interest IDs, values are booleans that describe whether the list member is in that group or not."}}, "language": {"type": "string", "title": "Language", "description": "If set/detected, the [subscriber\'s language](https://mailchimp.com/help/view-and-edit-contact-languages/)."}, "vip": {"type": "boolean", "title": "VIP", "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."}, "location": {"type": "object", "title": "Location", "description": "Subscriber location information.", "properties": {"latitude": {"type": "number", "title": "Latitude", "description": "The location latitude."}, "longitude": {"type": "number", "title": "Longitude", "description": "The location longitude."}}}, "marketing_permissions": {"type": "array", "title": "Marketing Permissions", "description": "The marketing permissions for the subscriber.", "items": {"type": "object", "title": "Marketing Permission", "description": "A single marketing permission a subscriber has either opted-in to or opted-out of.", "properties": {"marketing_permission_id": {"type": "string", "title": "Marketing Permission ID", "description": "The id for the marketing permission on the list"}, "enabled": {"type": "boolean", "title": "Enabled", "description": "If the subscriber has opted-in to the marketing permission."}}}}, "ip_signup": {"type": "string", "title": "Signup IP", "description": "IP address the subscriber signed up from."}, "timestamp_signup": {"type": "string", "title": "Signup Timestamp", "description": "The date and time the subscriber signed up for the list in ISO 8601 format.", "format": "date-time"}, "ip_opt": {"type": "string", "title": "Opt-in IP", "description": "The IP address the subscriber used to confirm their opt-in status."}, "timestamp_opt": {"type": "string", "title": "Opt-in Timestamp", "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format.", "format": "date-time"}}}', # noqa: E501
+ "UPDATELISTMEMBERTAGS": '{"type": "object", "title": "Member Tags", "description": "A list of tags assigned to a list member.", "required": ["tags"], "properties": {"tags": {"type": "array", "title": "Tags", "description": "A list of tags assigned to the list member.", "items": {"type": "object", "title": "Member Tag", "description": "Add or remove tags on a member by declaring a tag either active or inactive on a member.", "required": ["name", "status"], "properties": {"name": {"type": "string", "title": "Tag Name", "description": "The name of the tag."}, "status": {"type": "string", "title": "Status", "description": "The status for the tag on the member, pass in active to add a tag or inactive to remove it.", "enum": ["inactive", "active"]}}}}, "is_syncing": {"type": "boolean", "title": "Is Syncing", "description": "When is_syncing is true, automations based on the tags in the request will not fire"}}}', # noqa: E501
+ "ADDLISTMEMBEREVENT": '{"type": "object", "title": "Events", "description": "A new event for a specific list member", "required": ["name"], "properties": {"name": {"type": "string", "title": "Event Name", "description": "The name for this type of event (\'purchased\', \'visited\', etc). Must be 2-30 characters in length"}, "properties": {"type": "object", "title": "Properties", "description": "An optional list of properties", "additionalProperties": {"type": "string"}}, "is_syncing": {"type": "boolean", "title": "Is Syncing", "description": "Events created with the is_syncing value set to `true` will not trigger automations."}, "occurred_at": {"type": "string", "title": "Occurred Time", "description": "The date and time the event occurred in ISO 8601 format.", "format": "date-time"}}}', # noqa: E501
+ "ADDAUDIENCEMERGEFIELD": '{"type": "object", "title": "Merge Field", "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.", "required": ["name", "type"], "properties": {"tag": {"type": "string", "title": "Merge Tag", "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."}, "name": {"type": "string", "title": "Merge Field Name", "description": "The name of the merge field (audience field)."}, "type": {"type": "string", "title": "Merge Field Type", "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.", "enum": ["text", "number", "address", "phone", "date", "url", "imageurl", "radio", "dropdown", "birthday", "zip"]}, "required": {"type": "boolean", "title": "Required", "description": "Whether the merge field is required to import a contact."}, "default_value": {"type": "string", "title": "Default Value", "description": "The default value for the merge field if `null`."}, "public": {"type": "boolean", "title": "Merge Field Public Status", "description": "Whether the merge field is displayed on the signup form."}, "display_order": {"type": "integer", "title": "Display Order", "description": "The order that the merge field displays on the list signup form."}, "options": {"type": "object", "title": "Merge Field Options", "description": "Extra options for some merge field types.", "properties": {"default_country": {"type": "integer", "title": "Default Country", "description": "In an address field, the default country code if none supplied.", "items": {"type": "string"}}, "phone_format": {"type": "string", "title": "Phone Type", "description": "In a phone field, the phone number type: US or International."}, "date_format": {"type": "string", "title": "Date Type", "description": "In a date or birthday field, the format of the date."}, "choices": {"type": "array", "title": "Choices", "description": "In a radio or dropdown non-group field, the available options for contacts to pick from.", "items": {"type": "string"}, "example": ["First Choice", "Second Choice", "Third Choice"]}, "size": {"type": "integer", "title": "Text Field Size", "description": "In a text field, the default length of the text field."}}}, "help_text": {"type": "string", "title": "Merge Field Help Text", "description": "Extra text to help the subscriber fill out the form."}}}', # noqa: E501
+ "UPDATEMERGEFIELD": '{"type": "object", "title": "Merge Field", "description": "A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.", "required": ["name"], "properties": {"tag": {"type": "string", "title": "Merge Tag", "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."}, "name": {"type": "string", "title": "Merge Field Name", "description": "The name of the merge field (audience field)."}, "required": {"type": "boolean", "title": "Required", "description": "Whether the merge field is required to import a contact."}, "default_value": {"type": "string", "title": "Default Value", "description": "The default value for the merge field if `null`."}, "public": {"type": "boolean", "title": "Merge Field Public Status", "description": "Whether the merge field is displayed on the signup form."}, "display_order": {"type": "integer", "title": "Display Order", "description": "The order that the merge field displays on the list signup form."}, "options": {"type": "object", "title": "Merge Field Options", "description": "Extra options for some merge field types.", "properties": {"default_country": {"type": "integer", "title": "Default Country", "description": "In an address field, the default country code if none supplied."}, "phone_format": {"type": "string", "title": "Phone Type", "description": "In a phone field, the phone number type: US or International."}, "date_format": {"type": "string", "title": "Date Type", "description": "In a date or birthday field, the format of the date."}, "choices": {"type": "array", "title": "Choices", "description": "In a radio or dropdown non-group field, the available options for members to pick from.", "items": {"type": "string"}, "example": ["First Choice", "Second Choice", "Third Choice"]}}}, "help_text": {"type": "string", "title": "Merge Field Help Text", "description": "Extra text to help the subscriber fill out the form."}}}', # noqa: E501
+ "CREATEMAILCHIMPWEBHOOK": '{"type": "object", "title": "Add Webhook", "description": "Configure a webhook for the given list.", "properties": {"url": {"type": "string", "title": "URL", "description": "A valid URL for the Webhook.", "example": "http://yourdomain.com/webhook"}, "events": {"type": "object", "title": "Events", "description": "The events that can trigger the webhook and whether they are enabled.", "properties": {"subscribe": {"type": "boolean", "title": "Subscribed", "description": "Whether the webhook is triggered when a list subscriber is added.", "example": true}, "unsubscribe": {"type": "boolean", "title": "Unsubscribed", "description": "Whether the webhook is triggered when a list member unsubscribes.", "example": true}, "profile": {"type": "boolean", "title": "Profile Updated", "description": "Whether the webhook is triggered when a subscriber\'s profile is updated.", "example": true}, "cleaned": {"type": "boolean", "title": "Cleaned", "description": "Whether the webhook is triggered when a subscriber\'s email address is cleaned from the list.", "example": true}, "upemail": {"type": "boolean", "title": "Email Address Updated", "description": "Whether the webhook is triggered when a subscriber\'s email address is changed.", "example": true}, "campaign": {"type": "boolean", "title": "Campaign Sent", "description": "Whether the webhook is triggered when a campaign is sent or cancelled.", "example": true}}}, "sources": {"type": "object", "title": "Sources", "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.", "properties": {"user": {"type": "boolean", "title": "User", "description": "Whether the webhook is triggered by subscriber-initiated actions.", "example": true}, "admin": {"type": "boolean", "title": "Admin", "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.", "example": true}, "api": {"type": "boolean", "title": "API", "description": "Whether the webhook is triggered by actions initiated via the API.", "example": true}}}}}', # noqa: E501
+ "UPDATEWEBHOOKSETTINGS": '{"type": "object", "title": "Add Webhook", "description": "Configure a webhook for the given list.", "properties": {"url": {"type": "string", "title": "URL", "description": "A valid URL for the Webhook.", "example": "http://yourdomain.com/webhook"}, "events": {"type": "object", "title": "Events", "description": "The events that can trigger the webhook and whether they are enabled.", "properties": {"subscribe": {"type": "boolean", "title": "Subscribed", "description": "Whether the webhook is triggered when a list subscriber is added.", "example": true}, "unsubscribe": {"type": "boolean", "title": "Unsubscribed", "description": "Whether the webhook is triggered when a list member unsubscribes.", "example": true}, "profile": {"type": "boolean", "title": "Profile Updated", "description": "Whether the webhook is triggered when a subscriber\'s profile is updated.", "example": true}, "cleaned": {"type": "boolean", "title": "Cleaned", "description": "Whether the webhook is triggered when a subscriber\'s email address is cleaned from the list.", "example": true}, "upemail": {"type": "boolean", "title": "Email Address Updated", "description": "Whether the webhook is triggered when a subscriber\'s email address is changed.", "example": true}, "campaign": {"type": "boolean", "title": "Campaign Sent", "description": "Whether the webhook is triggered when a campaign is sent or cancelled.", "example": true}}}, "sources": {"type": "object", "title": "Sources", "description": "The possible sources of any events that can trigger the webhook and whether they are enabled.", "properties": {"user": {"type": "boolean", "title": "User", "description": "Whether the webhook is triggered by subscriber-initiated actions.", "example": true}, "admin": {"type": "boolean", "title": "Admin", "description": "Whether the webhook is triggered by admin-initiated actions in the web interface.", "example": true}, "api": {"type": "boolean", "title": "API", "description": "Whether the webhook is triggered by actions initiated via the API.", "example": true}}}}}', # noqa: E501
+ "CUSTOMIZELISTSIGNUPFORM": '{"type": "object", "title": "Signup Form", "description": "List signup form.", "properties": {"header": {"type": "object", "title": "Signup form header options", "description": "Options for customizing your signup form header.", "properties": {"image_url": {"type": "string", "title": "Header Image URL", "description": "Header image URL.", "example": "http://gallery.mailchimp.com/332310cb9a420a9e7fea2858a/images/2491208c-9458-4834-a708-fef4ee736472.png"}, "text": {"type": "string", "title": "Header Text", "description": "Header text.", "example": "Header Text goes here"}, "image_width": {"type": "string", "title": "Image width", "description": "Image width, in pixels.", "example": "800"}, "image_height": {"type": "string", "title": "Image height", "description": "Image height, in pixels.", "example": "200"}, "image_alt": {"type": "string", "title": "Image Alt", "description": "Alt text for the image.", "example": "This is an image"}, "image_link": {"type": "string", "title": "Image Link", "description": "The URL that the header image will link to.", "example": "gotothisimage.com"}, "image_align": {"type": "string", "title": "Image align", "description": "Image alignment.", "enum": ["none", "left", "center", "right"], "example": "center"}, "image_border_width": {"type": "string", "title": "Image border width", "description": "Image border width.", "example": "2"}, "image_border_style": {"type": "string", "title": "Image border style", "description": "Image border style.", "enum": ["none", "solid", "dotted", "dashed", "double", "groove", "outset", "inset", "ridge"], "example": "solid"}, "image_border_color": {"type": "string", "title": "Image border color", "description": "Image border color.", "example": "#896d6d"}, "image_target": {"type": "string", "title": "Image target", "description": "Image link target.", "enum": ["_blank", "null"], "example": "_blank"}}}, "contents": {"type": "array", "items": {"type": "object", "title": "Collection of Content for List Signup Forms", "description": "Collection of Content for List Signup Forms.", "properties": {"section": {"type": "string", "title": "Content Section Name", "description": "The content section name.", "enum": ["signup_message", "unsub_message", "signup_thank_you_title"], "example": "signup_message"}, "value": {"type": "string", "title": "Content Section Value", "description": "The content section text.", "example": "Signup message goes here"}}}, "title": "Signup form body content", "description": "The signup form body content."}, "styles": {"type": "array", "items": {"type": "object", "title": "Collection of Element style for List Signup Forms", "description": "Collection of Element style for List Signup Forms.", "properties": {"selector": {"type": "string", "title": "Selector", "description": "A string that identifies the element selector.", "enum": ["page_background", "page_header", "page_outer_wrapper", "body_background", "body_link_style", "forms_buttons", "forms_buttons_hovered", "forms_field_label", "forms_field_text", "forms_required", "forms_required_legend", "forms_help_text", "forms_errors", "monkey_rewards_badge"], "example": "page_background"}, "options": {"type": "array", "title": "Options", "description": "A collection of options for a selector.", "items": {"type": "object", "title": "An option for Signup Form Styles", "description": "An option for Signup Form Styles.", "properties": {"property": {"type": "string", "title": "Property", "description": "A string that identifies the property.", "example": "background-color"}, "value": {"type": "string", "title": "Value", "description": "A string that identifies value of the property.", "example": "#111111"}}}}}}, "title": "Signup Form element style", "description": "An array of objects, each representing an element style for the signup form."}}}', # noqa: E501
+ "ADDNEWECOMMERCESTORE": '{"type": "object", "title": "E-commerce Store", "description": "An individual store in an account.", "required": ["id", "list_id", "name", "currency_code"], "properties": {"id": {"type": "string", "title": "Store Foreign ID", "description": "The unique identifier for the store.", "example": "example_store"}, "list_id": {"type": "string", "title": "List ID", "description": "The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change.", "example": "1a2df69511"}, "name": {"type": "string", "title": "Store Name", "description": "The name of the store.", "example": "Freddie\'s Cat Hat Emporium"}, "platform": {"type": "string", "title": "Platform", "description": "The e-commerce platform of the store."}, "domain": {"type": "string", "title": "Domain", "description": "The store domain. This parameter is required for Connected Sites and Google Ads.", "example": "example.com"}, "is_syncing": {"type": "boolean", "title": "Is Syncing", "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."}, "email_address": {"type": "string", "title": "Email Address", "description": "The email address for the store.", "example": "freddie@mailchimp.com"}, "currency_code": {"type": "string", "title": "Currency", "description": "The three-letter ISO 4217 code for the currency that the store accepts.", "example": "USD"}, "money_format": {"type": "string", "title": "Money Format", "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.", "example": "$"}, "primary_locale": {"type": "string", "title": "Primary Locale", "description": "The primary locale for the store. For example: `en`, `de`, etc.", "example": "fr"}, "timezone": {"type": "string", "title": "Timezone", "description": "The timezone for the store.", "example": "Eastern"}, "phone": {"type": "string", "title": "Phone", "description": "The store phone number.", "example": "+16155550128"}, "address": {"type": "object", "title": "Address", "description": "The store address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The store\'s mailing address.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the store\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the store is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The store\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the store\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The store\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The store\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for to the store\'s country.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude of the store location.", "example": -75.68903}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude of the store location.", "example": 45.427408}}}}}', # noqa: E501
+ "UPDATEECOMMERCESTORE": '{"type": "object", "title": "E-commerce Store", "description": "An individual store in an account.", "properties": {"name": {"type": "string", "title": "Store Name", "description": "The name of the store.", "example": "Freddie\'s Cat Hat Emporium"}, "platform": {"type": "string", "title": "Platform", "description": "The e-commerce platform of the store."}, "domain": {"type": "string", "title": "Domain", "description": "The store domain.", "example": "example.com"}, "is_syncing": {"type": "boolean", "title": "Is Syncing", "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."}, "email_address": {"type": "string", "title": "Email Address", "description": "The email address for the store.", "example": "freddie@mailchimp.com"}, "currency_code": {"type": "string", "title": "Currency", "description": "The three-letter ISO 4217 code for the currency that the store accepts.", "example": "USD"}, "money_format": {"type": "string", "title": "Money Format", "description": "The currency format for the store. For example: `$`, `\u00a3`, etc.", "example": "$"}, "primary_locale": {"type": "string", "title": "Primary Locale", "description": "The primary locale for the store. For example: `en`, `de`, etc.", "example": "fr"}, "timezone": {"type": "string", "title": "Timezone", "description": "The timezone for the store.", "example": "Eastern"}, "phone": {"type": "string", "title": "Phone", "description": "The store phone number.", "example": "+16155550128"}, "address": {"type": "object", "title": "Address", "description": "The store address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The store\'s mailing address.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the store\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the store is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The store\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the store\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The store\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The store\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for to the store\'s country.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude of the store location.", "example": -75.68903}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude of the store location.", "example": 45.427408}}}}}', # noqa: E501
+ "ADDCARTTOSTORE": '{"type": "object", "title": "E-commerce Cart", "description": "Information about a specific cart.", "required": ["id", "currency_code", "customer", "order_total", "lines"], "properties": {"id": {"type": "string", "title": "Cart Foreign ID", "description": "A unique identifier for the cart."}, "customer": {"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.", "required": ["id"], "properties": {"id": {"type": "string", "title": "Customer Foreign ID", "description": "A unique identifier for the customer. Limited to 50 characters.", "maxLength": 50}, "email_address": {"type": "string", "title": "Email Address", "description": "The customer\'s email address."}, "opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}, "campaign_id": {"type": "string", "title": "Campaign ID", "description": "A string that uniquely identifies the campaign for a cart.", "example": "839488a60b"}, "checkout_url": {"type": "string", "title": "Checkout URL", "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."}, "currency_code": {"type": "string", "title": "Currency Code", "description": "The three-letter ISO 4217 code for the currency that the cart uses."}, "order_total": {"type": "number", "title": "Order Total", "description": "The order total for the cart."}, "tax_total": {"type": "number", "title": "Tax Total", "description": "The total tax for the cart."}, "lines": {"type": "array", "title": "Cart Line Items", "description": "An array of the cart\'s line items.", "items": {"type": "object", "title": "E-commerce Cart Line Item", "description": "Information about a specific cart line item.", "required": ["id", "product_id", "product_variant_id", "quantity", "price"], "properties": {"id": {"type": "string", "title": "Cart Line Item Foreign ID", "description": "A unique identifier for the cart line item."}, "product_id": {"type": "string", "title": "Cart Line Product Foreign ID", "description": "A unique identifier for the product associated with the cart line item."}, "product_variant_id": {"type": "string", "title": "Cart Line Product Variant Foreign ID", "description": "A unique identifier for the product variant associated with the cart line item."}, "quantity": {"type": "integer", "title": "Quantity", "description": "The quantity of a cart line item."}, "price": {"type": "number", "title": "Price", "description": "The price of a cart line item."}}}}}}', # noqa: E501
+ "UPDATECART": '{"type": "object", "title": "E-commerce Cart", "description": "Information about a specific cart.", "properties": {"customer": {"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.", "properties": {"opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}, "campaign_id": {"type": "string", "title": "Campaign ID", "description": "A string that uniquely identifies the campaign associated with a cart.", "example": "839488a60b"}, "checkout_url": {"type": "string", "title": "Checkout URL", "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."}, "currency_code": {"type": "string", "title": "Currency Code", "description": "The three-letter ISO 4217 code for the currency that the cart uses."}, "order_total": {"type": "number", "title": "Order Total", "description": "The order total for the cart."}, "tax_total": {"type": "number", "title": "Tax Total", "description": "The total tax for the cart."}, "lines": {"type": "array", "title": "Cart Line Items", "description": "An array of the cart\'s line items.", "items": {"type": "object", "title": "E-commerce Cart Line Item", "description": "Information about a specific cart line item.", "properties": {"product_id": {"type": "string", "title": "Cart Line Product Foreign ID", "description": "A unique identifier for the product associated with the cart line item."}, "product_variant_id": {"type": "string", "title": "Cart Line Product Variant Foreign ID", "description": "A unique identifier for the product variant associated with the cart line item."}, "quantity": {"type": "integer", "title": "Quantity", "description": "The quantity of a cart line item."}, "price": {"type": "number", "title": "Price", "description": "The price of a cart line item."}}}}}}', # noqa: E501
+ "ADDCUSTOMERTOSTORE": '{"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer.", "required": ["id", "opt_in_status"], "properties": {"id": {"type": "string", "title": "Customer Foreign ID", "description": "A unique identifier for the customer. Limited to 50 characters.", "maxLength": 50}, "email_address": {"type": "string", "title": "Email Address", "description": "The customer\'s email address."}, "sms_phone_number": {"type": "string", "title": "SMS Phone Number", "description": "A US phone number for SMS contact."}, "opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}', # noqa: E501
+ "ADDORUPDATECUSTOMERINSTORE": '{"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.", "required": ["id", "opt_in_status"], "properties": {"id": {"type": "string", "title": "Customer Foreign ID", "description": "A unique identifier for the customer. Limited to 50 characters.", "maxLength": 50}, "email_address": {"type": "string", "title": "Email Address", "description": "The customer\'s email address."}, "sms_phone_number": {"type": "string", "title": "SMS Phone Number", "description": "A US phone number for SMS contact."}, "opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}', # noqa: E501
+ "UPDATECUSTOMERINFO": '{"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.", "properties": {"opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}', # noqa: E501
+ "ADDSTOREPROMORULE": '{"type": "object", "title": "E-commerce Promo Rule", "description": "Information about an Ecommerce Store\'s specific Promo Rule.", "required": ["id", "description", "amount", "type", "target"], "properties": {"id": {"type": "string", "title": "Promo Rule Foreign ID", "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50."}, "title": {"type": "string", "title": "Title", "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.", "example": "50% off Total Order"}, "description": {"type": "string", "title": "Description", "description": "The description of a promotion restricted to UTF-8 characters with max length 255.", "example": "Save BIG during our summer sale!"}, "starts_at": {"type": "string", "format": "date-time", "title": "Promo Start Time", "description": "The date and time when the promotion is in effect in ISO 8601 format."}, "ends_at": {"type": "string", "format": "Promo date-time", "title": "End Time", "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."}, "amount": {"type": "number", "title": "Amount", "format": "float", "description": "The amount of the promo code discount. If \'type\' is \'fixed\', the amount is treated as a monetary value. If \'type\' is \'percentage\', amount must be a decimal value between 0.0 and 1.0, inclusive.", "example": 0.5}, "type": {"type": "string", "title": "Type", "description": "Type of discount. For free shipping set type to fixed.", "enum": ["fixed", "percentage"]}, "target": {"type": "string", "title": "Target", "description": "The target that the discount applies to.", "enum": ["per_item", "total", "shipping"]}, "enabled": {"type": "boolean", "title": "Enabled", "description": "Whether the promo rule is currently enabled.", "example": "true"}, "created_at_foreign": {"type": "string", "format": "date-time", "title": "Foreign Create Time", "description": "The date and time the promotion was created in ISO 8601 format."}, "updated_at_foreign": {"type": "string", "format": "date-time", "title": "Foreign Update Time", "description": "The date and time the promotion was updated in ISO 8601 format."}}}', # noqa: E501
+ "UPDATEPROMORULE": '{"type": "object", "title": "E-commerce Promo Rule", "description": "Information about an Ecommerce Store\'s specific Promo Rule.", "properties": {"title": {"type": "string", "title": "Title", "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.", "example": "50% off Total Order"}, "description": {"type": "string", "title": "Description", "description": "The description of a promotion restricted to UTF-8 characters with max length 255.", "example": "Save BIG during our summer sale!"}, "starts_at": {"type": "string", "format": "date-time", "title": "Promo Start Time", "description": "The date and time when the promotion is in effect in ISO 8601 format."}, "ends_at": {"type": "string", "format": "Promo date-time", "title": "End Time", "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."}, "amount": {"type": "number", "title": "Amount", "format": "float", "description": "The amount of the promo code discount. If \'type\' is \'fixed\', the amount is treated as a monetary value. If \'type\' is \'percentage\', amount must be a decimal value between 0.0 and 1.0, inclusive.", "example": 0.5}, "type": {"type": "string", "title": "Type", "description": "Type of discount. For free shipping set type to fixed.", "enum": ["fixed", "percentage"]}, "target": {"type": "string", "title": "Target", "description": "The target that the discount applies to.", "enum": ["per_item", "total", "shipping"]}, "enabled": {"type": "boolean", "title": "Enabled", "description": "Whether the promo rule is currently enabled.", "example": "true"}, "created_at_foreign": {"type": "string", "format": "date-time", "title": "Foreign Create Time", "description": "The date and time the promotion was created in ISO 8601 format."}, "updated_at_foreign": {"type": "string", "format": "date-time", "title": "Foreign Update Time", "description": "The date and time the promotion was updated in ISO 8601 format."}}}', # noqa: E501
+ "ADDORDERTOSTORE": '{"type": "object", "title": "E-commerce Order", "description": "Information about a specific order.", "required": ["id", "customer", "currency_code", "order_total", "lines"], "properties": {"id": {"type": "string", "title": "Order Foreign ID", "description": "A unique identifier for the order."}, "customer": {"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.", "required": ["id"], "properties": {"id": {"type": "string", "title": "Customer Foreign ID", "description": "A unique identifier for the customer. Limited to 50 characters.", "maxLength": 50}, "email_address": {"type": "string", "title": "Email Address", "description": "The customer\'s email address."}, "opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}, "campaign_id": {"type": "string", "title": "Campaign ID", "description": "A string that uniquely identifies the campaign for an order.", "example": "839488a60b"}, "cart_id": {"type": "string", "title": "Cart ID", "description": "A cart id that the order was placed for.", "example": "cart-123"}, "landing_site": {"type": "string", "title": "Landing Site", "description": "The URL for the page where the buyer landed when entering the shop.", "example": "http://www.example.com?source=abc"}, "financial_status": {"type": "string", "title": "Financial Status", "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."}, "fulfillment_status": {"type": "string", "title": "Fulfillment Status", "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."}, "currency_code": {"type": "string", "title": "Currency Code", "description": "The three-letter ISO 4217 code for the currency that the store accepts."}, "order_total": {"type": "number", "title": "Order Total", "description": "The total for the order."}, "order_url": {"type": "string", "title": "Order URL", "description": "The URL for the order."}, "discount_total": {"type": "number", "title": "Discount Total", "description": "The total amount of the discounts to be applied to the price of the order."}, "tax_total": {"type": "number", "title": "Tax Total", "description": "The tax total for the order."}, "shipping_total": {"type": "number", "title": "Shipping Total", "description": "The shipping total for the order."}, "tracking_code": {"type": "string", "enum": ["prec"], "title": "Tracking Code", "description": "The Mailchimp tracking code for the order. Uses the \'mc_tc\' parameter in E-Commerce tracking URLs."}, "processed_at_foreign": {"type": "string", "title": "Foreign Processed Time", "format": "date-time", "description": "The date and time the order was processed in ISO 8601 format.", "example": "2015-07-15T19:28:00+00:00"}, "cancelled_at_foreign": {"type": "string", "title": "Foreign Cancel Time", "format": "date-time", "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.", "example": "2015-07-15T19:28:00+00:00"}, "updated_at_foreign": {"type": "string", "title": "Foreign Update Time", "format": "date-time", "description": "The date and time the order was updated in ISO 8601 format.", "example": "2015-07-15T19:28:00+00:00"}, "shipping_address": {"type": "object", "title": "Shipping Address", "description": "The shipping address for the order.", "properties": {"name": {"type": "string", "title": "Name", "description": "The name associated with an order\'s shipping address.", "example": "Freddie Chimpenheimer"}, "address1": {"type": "string", "title": "Address Field 1", "description": "The shipping address for the order.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the shipping address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city in the order\'s shipping address.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The state or normalized province in the order\'s shipping address.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the province or state in the shipping address.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The postal or zip code in the shipping address.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The country in the shipping address.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the country in the shipping address.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude for the shipping address location.", "example": -75.68903}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude for the shipping address location.", "example": 45.427408}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the order\'s shipping address.", "example": "8675309"}, "company": {"type": "string", "title": "Company", "description": "The company associated with the shipping address."}}}, "billing_address": {"type": "object", "title": "Billing Address", "description": "The billing address for the order.", "properties": {"name": {"type": "string", "title": "Name", "description": "The name associated with the billing address.", "example": "Freddie Chimpenheimer"}, "address1": {"type": "string", "title": "Address Field 1", "description": "The billing address for the order.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the billing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city in the billing address.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The state or normalized province in the billing address.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the province in the billing address.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The postal or zip code in the billing address.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The country in the billing address.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the country in the billing address.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude for the billing address location.", "example": -75.68903}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude for the billing address location.", "example": 45.427408}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the billing address", "example": "8675309"}, "company": {"type": "string", "title": "Company", "description": "The company associated with the billing address."}}}, "promos": {"type": "array", "title": "Promos", "description": "The promo codes applied on the order", "items": {"type": "object", "required": ["code", "type", "amount_discounted"], "properties": {"code": {"type": "string", "title": "Code", "description": "The Promo Code"}, "amount_discounted": {"type": "number", "title": "Amount Discounted", "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"}, "type": {"type": "string", "title": "Type", "description": "Type of discount. For free shipping set type to fixed", "enum": ["fixed", "percentage"]}}}}, "lines": {"type": "array", "title": "Order Line Items", "description": "An array of the order\'s line items.", "items": {"type": "object", "title": "E-commerce Order Line Item", "description": "Information about a specific order line.", "required": ["id", "product_id", "product_variant_id", "quantity", "price"], "properties": {"id": {"type": "string", "title": "Order Line Item Foreign ID", "description": "A unique identifier for the order line item."}, "product_id": {"type": "string", "title": "Order Line Item Product Foreign ID", "description": "A unique identifier for the product associated with the order line item."}, "product_variant_id": {"type": "string", "title": "Order Line Item Product Variant Foreign ID", "description": "A unique identifier for the product variant associated with the order line item."}, "product": {"type": "object", "title": "E-commerce Product", "description": "Information about a specific product.", "required": ["id", "title", "variants"], "properties": {"id": {"type": "string", "title": "Product Foreign ID", "description": "A unique identifier for the product."}, "title": {"type": "string", "title": "Title", "description": "The title of a product.", "example": "Cat Hat"}, "handle": {"type": "string", "title": "Handle", "description": "The handle of a product.", "example": "cat-hat"}, "url": {"type": "string", "title": "Product URL", "description": "The URL for a product."}, "description": {"type": "string", "title": "Description", "description": "The description of a product.", "example": "This is a cat hat."}, "type": {"type": "string", "title": "Type", "description": "The type of product.", "example": "Accessories"}, "vendor": {"type": "string", "title": "Vendor", "description": "The vendor for a product."}, "image_url": {"type": "string", "title": "Product Image URL", "description": "The image URL for a product."}, "variants": {"type": "array", "title": "Product Variants", "description": "An array of the product\'s variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.", "items": {"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "required": ["id", "title"], "properties": {"id": {"type": "string", "title": "Product Variant Foreign ID", "description": "A unique identifier for the product variant."}, "title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}}, "images": {"type": "array", "title": "Product Images", "description": "An array of the product\'s images.", "items": {"type": "object", "title": "E-commerce Product Image", "description": "Information about a specific product image.", "required": ["id", "url"], "properties": {"id": {"type": "string", "title": "Image Foreign ID", "description": "A unique identifier for the product image."}, "url": {"type": "string", "title": "URL", "description": "The URL for a product image."}, "variant_ids": {"type": "array", "title": "Product Variants", "description": "The list of product variants using the image.", "items": {"type": "string"}}}}}, "published_at_foreign": {"type": "string", "title": "Foreign Publish Time", "format": "date-time", "description": "The date and time the product was published.", "example": "2015-07-15T19:28:00+00:00"}}}, "quantity": {"type": "integer", "title": "Quantity", "description": "The quantity of an order line item."}, "price": {"type": "number", "title": "Price", "description": "The price of an order line item."}, "discount": {"type": "number", "title": "Discount", "description": "The total discount amount applied to this line item."}}}}, "outreach": {"type": "object", "title": "Outreach", "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.", "properties": {"id": {"type": "string", "title": "Outreach ID", "description": "A unique identifier for the outreach. Can be an email campaign ID.", "example": "839488a60b"}}}, "tracking_number": {"type": "string", "title": "Tracking number", "description": "The tracking number associated with the order."}, "tracking_carrier": {"type": "string", "title": "Tracking carrier", "description": "The tracking carrier associated with the order."}, "tracking_url": {"type": "string", "title": "Tracking URL", "description": "The tracking URL associated with the order."}}}', # noqa: E501
+ "UPDATEECOMMERCEORDER": '{"type": "object", "title": "E-commerce Order", "description": "Information about a specific order.", "required": ["id"], "properties": {"id": {"type": "string", "title": "Order Foreign ID", "description": "A unique identifier for the order."}, "customer": {"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.", "required": ["id"], "properties": {"id": {"type": "string", "title": "Customer Foreign ID", "description": "A unique identifier for the customer. Limited to 50 characters.", "maxLength": 50}, "email_address": {"type": "string", "title": "Email Address", "description": "The customer\'s email address."}, "opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "405 N Angier Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address."}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}, "campaign_id": {"type": "string", "title": "Campaign ID", "description": "A string that uniquely identifies the campaign for an order.", "example": "839488a60b"}, "cart_id": {"type": "string", "title": "Cart ID", "description": "A cart id that the order was placed for.", "example": "cart-123"}, "landing_site": {"type": "string", "title": "Landing Site", "description": "The URL for the page where the buyer landed when entering the shop.", "example": "http://www.example.com?source=abc"}, "financial_status": {"type": "string", "title": "Financial Status", "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."}, "fulfillment_status": {"type": "string", "title": "Fulfillment Status", "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."}, "currency_code": {"type": "string", "title": "Currency Code", "description": "The three-letter ISO 4217 code for the currency that the store accepts."}, "order_total": {"type": "number", "title": "Order Total", "description": "The total for the order."}, "order_url": {"type": "string", "title": "Order URL", "description": "The URL for the order."}, "discount_total": {"type": "number", "title": "Discount Total", "description": "The total amount of the discounts to be applied to the price of the order."}, "tax_total": {"type": "number", "title": "Tax Total", "description": "The tax total for the order."}, "shipping_total": {"type": "number", "title": "Shipping Total", "description": "The shipping total for the order."}, "tracking_code": {"type": "string", "enum": ["prec"], "title": "Tracking Code", "description": "The Mailchimp tracking code for the order. Uses the \'mc_tc\' parameter in E-Commerce tracking URLs."}, "processed_at_foreign": {"type": "string", "title": "Foreign Processed Time", "format": "date-time", "description": "The date and time the order was processed in ISO 8601 format.", "example": "2024-09-10T17:27:43+00:00"}, "cancelled_at_foreign": {"type": "string", "title": "Foreign Cancel Time", "format": "date-time", "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.", "example": "2024-09-10T17:27:43+00:00"}, "updated_at_foreign": {"type": "string", "title": "Foreign Update Time", "format": "date-time", "description": "The date and time the order was updated in ISO 8601 format.", "example": "2024-09-10T17:27:43+00:00"}, "shipping_address": {"type": "object", "title": "Shipping Address", "description": "The shipping address for the order.", "properties": {"name": {"type": "string", "title": "Name", "description": "The name associated with an order\'s shipping address.", "example": "Freddie Chimpenheimer"}, "address1": {"type": "string", "title": "Address Field 1", "description": "The shipping address for the order.", "example": "405 N Angier Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the shipping address."}, "city": {"type": "string", "title": "City ", "description": "The city in the order\'s shipping address.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The state or normalized province in the order\'s shipping address.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the province or state in the shipping address.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The postal or zip code in the shipping address.", "example": "30308"}, "country": {"type": "string", "title": "Country", "description": "The country in the shipping address.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the country in the shipping address.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude for the shipping address location.", "example": -84.362887}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude for the shipping address location.", "example": 33.768526}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the order\'s shipping address.", "example": "+16155550128"}, "company": {"type": "string", "title": "Company", "description": "The company associated with the shipping address."}}}, "billing_address": {"type": "object", "title": "Billing Address", "description": "The billing address for the order.", "properties": {"name": {"type": "string", "title": "Name", "description": "The name associated with the billing address.", "example": "Freddie Chimpenheimer"}, "address1": {"type": "string", "title": "Address Field 1", "description": "The billing address for the order.", "example": "405 N Angier Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the billing address."}, "city": {"type": "string", "title": "City ", "description": "The city in the billing address.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The state or normalized province in the billing address.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the province in the billing address.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The postal or zip code in the billing address.", "example": "30308"}, "country": {"type": "string", "title": "Country", "description": "The country in the billing address.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the country in the billing address.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude for the billing address location.", "example": -84.362887}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude for the billing address location.", "example": 33.768526}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the billing address", "example": "+16155550128"}, "company": {"type": "string", "title": "Company", "description": "The company associated with the billing address."}}}, "promos": {"type": "array", "title": "Promos", "description": "The promo codes applied on the order", "items": {"type": "object", "required": ["code", "type", "amount_discounted"], "properties": {"code": {"type": "string", "title": "Code", "description": "The Promo Code"}, "amount_discounted": {"type": "number", "title": "Amount Discounted", "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"}, "type": {"type": "string", "title": "Type", "description": "Type of discount. For free shipping set type to fixed", "enum": ["fixed", "percentage"]}}}}, "lines": {"type": "array", "title": "Order Line Items", "description": "An array of the order\'s line items.", "items": {"type": "object", "title": "E-commerce Order Line Item", "description": "Information about a specific order line.", "required": ["id"], "properties": {"id": {"type": "string", "title": "Order Line Item Foreign ID", "description": "A unique identifier for the order line item."}, "product_id": {"type": "string", "title": "Order Line Item Product Foreign ID", "description": "A unique identifier for the product associated with the order line item."}, "product_variant_id": {"type": "string", "title": "Order Line Item Product Variant Foreign ID", "description": "A unique identifier for the product variant associated with the order line item."}, "product": {"type": "object", "title": "E-commerce Product", "description": "Information about a specific product.", "required": ["id"], "properties": {"id": {"type": "string", "title": "Product Foreign ID", "description": "A unique identifier for the product."}, "title": {"type": "string", "title": "Title", "description": "The title of a product.", "example": "Cat Hat"}, "handle": {"type": "string", "title": "Handle", "description": "The handle of a product.", "example": "cat-hat"}, "url": {"type": "string", "title": "Product URL", "description": "The URL for a product."}, "description": {"type": "string", "title": "Description", "description": "The description of a product.", "example": "This is a cat hat."}, "type": {"type": "string", "title": "Type", "description": "The type of product.", "example": "Accessories"}, "vendor": {"type": "string", "title": "Vendor", "description": "The vendor for a product."}, "image_url": {"type": "string", "title": "Product Image URL", "description": "The image URL for a product."}, "variants": {"type": "array", "title": "Product Variants", "description": "An array of the product\'s variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.", "items": {"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "required": ["id", "title"], "properties": {"id": {"type": "string", "title": "Product Variant Foreign ID", "description": "A unique identifier for the product variant."}, "title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}}, "images": {"type": "array", "title": "Product Images", "description": "An array of the product\'s images.", "items": {"type": "object", "title": "E-commerce Product Image", "description": "Information about a specific product image.", "required": ["id", "url"], "properties": {"id": {"type": "string", "title": "Image Foreign ID", "description": "A unique identifier for the product image."}, "url": {"type": "string", "title": "URL", "description": "The URL for a product image."}, "variant_ids": {"type": "array", "title": "Product Variants", "description": "The list of product variants using the image.", "items": {"type": "string"}}}}}, "published_at_foreign": {"type": "string", "title": "Foreign Publish Time", "format": "date-time", "description": "The date and time the product was published.", "example": "2015-07-15T19:28:00+00:00"}}}, "quantity": {"type": "integer", "title": "Quantity", "description": "The quantity of an order line item."}, "price": {"type": "number", "title": "Price", "description": "The price of an order line item."}, "discount": {"type": "number", "title": "Discount", "description": "The total discount amount applied to this line item."}}}}, "outreach": {"type": "object", "title": "Outreach", "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.", "properties": {"id": {"type": "string", "title": "Outreach ID", "description": "A unique identifier for the outreach. Can be an email campaign ID.", "example": "839488a60b"}}}, "tracking_number": {"type": "string", "title": "Tracking number", "description": "The tracking number associated with the order."}, "tracking_carrier": {"type": "string", "title": "Tracking carrier", "description": "The tracking carrier associated with the order."}, "tracking_url": {"type": "string", "title": "Tracking URL", "description": "The tracking URL associated with the order."}}}', # noqa: E501
+ "UPDATEORDERMAILCHIMP": '{"type": "object", "title": "E-commerce Order", "description": "Information about a specific order.", "properties": {"customer": {"type": "object", "title": "E-commerce Customer", "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.", "properties": {"opt_in_status": {"type": "boolean", "title": "Opt-in Status", "description": "The customer\'s opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don\'t opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."}, "company": {"type": "string", "title": "Company", "description": "The customer\'s company."}, "first_name": {"type": "string", "title": "First Name", "description": "The customer\'s first name."}, "last_name": {"type": "string", "title": "Last Name", "description": "The customer\'s last name."}, "address": {"type": "object", "title": "Address", "description": "The customer\'s address.", "properties": {"address1": {"type": "string", "title": "Address Field 1", "description": "The mailing address of the customer.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the customer\'s mailing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city the customer is located in.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The customer\'s state name or normalized province.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the customer\'s province or state.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The customer\'s postal or zip code.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The customer\'s country.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the customer\'s country.", "example": "US"}}}}}, "campaign_id": {"type": "string", "title": "Campaign ID", "description": "A string that uniquely identifies the campaign associated with an order.", "example": "839488a60b"}, "cart_id": {"type": "string", "title": "Cart ID", "description": "A cart id that the order was placed for.", "example": "cart-123"}, "landing_site": {"type": "string", "title": "Landing Site", "description": "The URL for the page where the buyer landed when entering the shop.", "example": "http://www.example.com?source=abc"}, "financial_status": {"type": "string", "title": "Financial Status", "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."}, "fulfillment_status": {"type": "string", "title": "Fulfillment Status", "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."}, "currency_code": {"type": "string", "title": "Currency Code", "description": "The three-letter ISO 4217 code for the currency that the store accepts."}, "order_total": {"type": "number", "title": "Order Total", "description": "The order total associated with an order."}, "order_url": {"type": "string", "title": "Order URL", "description": "The URL for the order."}, "discount_total": {"type": "number", "title": "Discount Total", "description": "The total amount of the discounts to be applied to the price of the order."}, "tax_total": {"type": "number", "title": "Tax Total", "description": "The tax total associated with an order."}, "shipping_total": {"type": "number", "title": "Shipping Total", "description": "The shipping total for the order."}, "tracking_code": {"type": "string", "enum": ["prec"], "title": "Tracking Code", "description": "The Mailchimp tracking code for the order. Uses the \'mc_tc\' parameter in E-Commerce tracking URLs."}, "processed_at_foreign": {"type": "string", "title": "Foreign Processed Time", "format": "date-time", "description": "The date and time the order was processed in ISO 8601 format.", "example": "2015-07-15T19:28:00+00:00"}, "cancelled_at_foreign": {"type": "string", "title": "Foreign Cancel Time", "format": "date-time", "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited.", "example": "2015-07-15T19:28:00+00:00"}, "updated_at_foreign": {"type": "string", "title": "Foreign Update Time", "format": "date-time", "description": "The date and time the order was updated in ISO 8601 format.", "example": "2015-07-15T19:28:00+00:00"}, "shipping_address": {"type": "object", "title": "Shipping Address", "description": "The shipping address for the order.", "properties": {"name": {"type": "string", "title": "Name", "description": "The name associated with an order\'s shipping address.", "example": "Freddie Chimpenheimer"}, "address1": {"type": "string", "title": "Address Field 1", "description": "The shipping address for the order.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the shipping address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city in the order\'s shipping address.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The state or normalized province in the order\'s shipping address.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the province or state the order\'s shipping address is located in.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The postal or zip code in the order\'s shipping address.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The country in the order\'s shipping address.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the country in the shipping address.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude for the shipping address location.", "example": -75.68903}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude for the shipping address location.", "example": 45.427408}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the order\'s shipping address", "example": "8675309"}, "company": {"type": "string", "title": "Company", "description": "The company associated with an order\'s shipping address."}}}, "billing_address": {"type": "object", "title": "Billing Address", "description": "The billing address for the order.", "properties": {"name": {"type": "string", "title": "Name", "description": "The name associated with an order\'s billing address.", "example": "Freddie Chimpenheimer"}, "address1": {"type": "string", "title": "Address Field 1", "description": "The billing address for the order.", "example": "675 Ponce de Leon Ave NE"}, "address2": {"type": "string", "title": "Address Field 2", "description": "An additional field for the billing address.", "example": "Suite 5000"}, "city": {"type": "string", "title": "City ", "description": "The city in the billing address.", "example": "Atlanta"}, "province": {"type": "string", "title": "Province", "description": "The state or normalized province in the billing address.", "example": "Georgia"}, "province_code": {"type": "string", "title": "Province Code", "description": "The two-letter code for the province or state in the billing address.", "example": "GA"}, "postal_code": {"type": "string", "title": "Postal Code", "description": "The postal or zip code in the billing address.", "example": "30308"}, "country": {"type": "string", "title": "Country Code", "description": "The country in the billing address.", "example": "United States"}, "country_code": {"type": "string", "title": "Country Code", "description": "The two-letter code for the country in the billing address.", "example": "US"}, "longitude": {"type": "number", "title": "Longitude", "description": "The longitude for the billing address location.", "example": -75.68903}, "latitude": {"type": "number", "title": "Latitude", "description": "The latitude for the billing address location.", "example": 45.427408}, "phone": {"type": "string", "title": "Phone Number", "description": "The phone number for the billing address.", "example": "8675309"}, "company": {"type": "string", "title": "Company", "description": "The company associated with the billing address."}}}, "promos": {"type": "array", "title": "Promos", "description": "The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided.", "items": {"type": "object", "required": ["code", "type", "amount_discounted"], "properties": {"code": {"type": "string", "title": "Code", "description": "The Promo Code"}, "amount_discounted": {"type": "number", "title": "Amount Discounted", "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"}, "type": {"type": "string", "title": "Type", "description": "Type of discount. For free shipping set type to fixed", "enum": ["fixed", "percentage"]}}}}, "lines": {"type": "array", "title": "Order Line Items", "description": "An array of the order\'s line items.", "items": {"type": "object", "title": "E-commerce Order Line Item", "description": "Information about a specific order line.", "properties": {"product_id": {"type": "string", "title": "Order Line Item Product Foreign ID", "description": "A unique identifier for the product associated with the order line item."}, "product_variant_id": {"type": "string", "title": "Order Line Item Product Variant Foreign ID", "description": "A unique identifier for the product variant associated with the order line item."}, "quantity": {"type": "integer", "title": "Quantity", "description": "The quantity of an order line item."}, "price": {"type": "number", "title": "Price", "description": "The price of an order line item."}, "discount": {"type": "number", "title": "Discount", "description": "The total discount amount applied to this line item."}}}}, "outreach": {"type": "object", "title": "Outreach", "description": "The outreach associated with this order. For example, an email campaign or Facebook ad.", "properties": {"id": {"type": "string", "title": "Outreach ID", "description": "A unique identifier for the outreach. Can be an email campaign ID.", "example": "839488a60b"}}}, "tracking_number": {"type": "string", "title": "Tracking number", "description": "The tracking number associated with the order."}, "tracking_carrier": {"type": "string", "title": "Tracking carrier", "description": "The tracking carrier associated with the order."}, "tracking_url": {"type": "string", "title": "Tracking URL", "description": "The tracking URL associated with the order."}}}', # noqa: E501
+ "ADDORDERLINEITEM": '{"type": "object", "title": "E-commerce Order Line Item", "description": "Information about a specific order line.", "required": ["id", "product_id", "product_variant_id", "quantity", "price"], "properties": {"id": {"type": "string", "title": "Order Line Item Foreign ID", "description": "A unique identifier for the order line item."}, "product_id": {"type": "string", "title": "Order Line Item Product Foreign ID", "description": "A unique identifier for the product associated with the order line item."}, "product_variant_id": {"type": "string", "title": "Order Line Item Product Variant Foreign ID", "description": "A unique identifier for the product variant associated with the order line item."}, "product": {"type": "object", "title": "E-commerce Product", "description": "Information about a specific product.", "required": ["id", "title", "variants"], "properties": {"id": {"type": "string", "title": "Product Foreign ID", "description": "A unique identifier for the product."}, "title": {"type": "string", "title": "Title", "description": "The title of a product.", "example": "Cat Hat"}, "handle": {"type": "string", "title": "Handle", "description": "The handle of a product.", "example": "cat-hat"}, "url": {"type": "string", "title": "Product URL", "description": "The URL for a product."}, "description": {"type": "string", "title": "Description", "description": "The description of a product.", "example": "This is a cat hat."}, "type": {"type": "string", "title": "Type", "description": "The type of product.", "example": "Accessories"}, "vendor": {"type": "string", "title": "Vendor", "description": "The vendor for a product."}, "image_url": {"type": "string", "title": "Product Image URL", "description": "The image URL for a product."}, "variants": {"type": "array", "title": "Product Variants", "description": "An array of the product\'s variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.", "items": {"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "required": ["id", "title"], "properties": {"id": {"type": "string", "title": "Product Variant Foreign ID", "description": "A unique identifier for the product variant."}, "title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}}, "images": {"type": "array", "title": "Product Images", "description": "An array of the product\'s images.", "items": {"type": "object", "title": "E-commerce Product Image", "description": "Information about a specific product image.", "required": ["id", "url"], "properties": {"id": {"type": "string", "title": "Image Foreign ID", "description": "A unique identifier for the product image."}, "url": {"type": "string", "title": "URL", "description": "The URL for a product image."}, "variant_ids": {"type": "array", "title": "Product Variants", "description": "The list of product variants using the image.", "items": {"type": "string"}}}}}, "published_at_foreign": {"type": "string", "title": "Foreign Publish Time", "format": "date-time", "description": "The date and time the product was published.", "example": "2015-07-15T19:28:00+00:00"}}}, "quantity": {"type": "integer", "title": "Quantity", "description": "The quantity of an order line item."}, "price": {"type": "number", "title": "Price", "description": "The price of an order line item."}, "discount": {"type": "number", "title": "Discount", "description": "The total discount amount applied to this line item."}}}', # noqa: E501
+ "ADDPRODUCTTOSTORE": '{"type": "object", "title": "E-commerce Product", "description": "Information about a specific product.", "required": ["id", "title", "variants"], "properties": {"id": {"type": "string", "title": "Product Foreign ID", "description": "A unique identifier for the product."}, "title": {"type": "string", "title": "Title", "description": "The title of a product.", "example": "Cat Hat"}, "handle": {"type": "string", "title": "Handle", "description": "The handle of a product.", "example": "cat-hat"}, "url": {"type": "string", "title": "Product URL", "description": "The URL for a product."}, "description": {"type": "string", "title": "Description", "description": "The description of a product.", "example": "This is a cat hat."}, "type": {"type": "string", "title": "Type", "description": "The type of product.", "example": "Accessories"}, "vendor": {"type": "string", "title": "Vendor", "description": "The vendor for a product."}, "image_url": {"type": "string", "title": "Product Image URL", "description": "The image URL for a product."}, "variants": {"type": "array", "title": "Product Variants", "description": "An array of the product\'s variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.", "items": {"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "required": ["id", "title"], "properties": {"id": {"type": "string", "title": "Product Variant Foreign ID", "description": "A unique identifier for the product variant."}, "title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}}, "images": {"type": "array", "title": "Product Images", "description": "An array of the product\'s images.", "items": {"type": "object", "title": "E-commerce Product Image", "description": "Information about a specific product image.", "required": ["id", "url"], "properties": {"id": {"type": "string", "title": "Image Foreign ID", "description": "A unique identifier for the product image."}, "url": {"type": "string", "title": "URL", "description": "The URL for a product image."}, "variant_ids": {"type": "array", "title": "Product Variants", "description": "The list of product variants using the image.", "items": {"type": "string"}}}}}, "published_at_foreign": {"type": "string", "title": "Foreign Publish Time", "format": "date-time", "description": "The date and time the product was published.", "example": "2015-07-15T19:28:00+00:00"}}}', # noqa: E501
+ "UPDATEPRODUCTINFO": '{"type": "object", "title": "E-commerce Product", "description": "Information about a specific product.", "properties": {"title": {"type": "string", "title": "Title", "description": "The title of a product.", "example": "Cat Hat"}, "handle": {"type": "string", "title": "Handle", "description": "The handle of a product.", "example": "cat-hat"}, "url": {"type": "string", "title": "Product URL", "description": "The URL for a product."}, "description": {"type": "string", "title": "Description", "description": "The description of a product.", "example": "This is a cat hat."}, "type": {"type": "string", "title": "Type", "description": "The type of product.", "example": "Accessories"}, "vendor": {"type": "string", "title": "Vendor", "description": "The vendor for a product."}, "image_url": {"type": "string", "title": "Product Image URL", "description": "The image URL for a product."}, "variants": {"type": "array", "title": "Product Variants", "description": "An array of the product\'s variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.", "items": {"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "properties": {"title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}}, "images": {"type": "array", "title": "Product Images", "description": "An array of the product\'s images.", "items": {"type": "object", "title": "E-commerce Product Image", "description": "Information about a specific product image.", "properties": {"id": {"type": "string", "title": "Image Foreign ID", "description": "A unique identifier for the product image."}, "url": {"type": "string", "title": "URL", "description": "The URL for a product image."}, "variant_ids": {"type": "array", "title": "Product Variants", "description": "The list of product variants using the image.", "items": {"type": "string"}}}}}, "published_at_foreign": {"type": "string", "title": "Foreign Publish Time", "format": "date-time", "description": "The date and time the product was published in ISO 8601 format.", "example": "2015-07-15T19:28:00+00:00"}}}', # noqa: E501
+ "UPDATEECOMMERCEPRODUCT": '{"type": "object", "title": "E-commerce Product", "description": "Information about a specific product.", "required": ["id"], "properties": {"id": {"type": "string", "title": "Product Foreign ID", "description": "A unique identifier for the product."}, "title": {"type": "string", "title": "Title", "description": "The title of a product.", "example": "Cat Hat"}, "handle": {"type": "string", "title": "Handle", "description": "The handle of a product.", "example": "cat-hat"}, "url": {"type": "string", "title": "Product URL", "description": "The URL for a product."}, "description": {"type": "string", "title": "Description", "description": "The description of a product.", "example": "This is a cat hat."}, "type": {"type": "string", "title": "Type", "description": "The type of product.", "example": "Accessories"}, "vendor": {"type": "string", "title": "Vendor", "description": "The vendor for a product."}, "image_url": {"type": "string", "title": "Product Image URL", "description": "The image URL for a product."}, "variants": {"type": "array", "title": "Product Variants", "description": "An array of the product\'s variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.", "items": {"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "required": ["id", "title"], "properties": {"id": {"type": "string", "title": "Product Variant Foreign ID", "description": "A unique identifier for the product variant."}, "title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}}, "images": {"type": "array", "title": "Product Images", "description": "An array of the product\'s images.", "items": {"type": "object", "title": "E-commerce Product Image", "description": "Information about a specific product image.", "required": ["id", "url"], "properties": {"id": {"type": "string", "title": "Image Foreign ID", "description": "A unique identifier for the product image."}, "url": {"type": "string", "title": "URL", "description": "The URL for a product image."}, "variant_ids": {"type": "array", "title": "Product Variants", "description": "The list of product variants using the image.", "items": {"type": "string"}}}}}, "published_at_foreign": {"type": "string", "title": "Foreign Publish Time", "format": "date-time", "description": "The date and time the product was published.", "example": "2015-07-15T19:28:00+00:00"}}}', # noqa: E501
+ "ADDPRODUCTVARIANTMAILCHIMP": '{"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "required": ["id", "title"], "properties": {"id": {"type": "string", "title": "Product Variant Foreign ID", "description": "A unique identifier for the product variant."}, "title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}', # noqa: E501
+ "UPDATEPRODUCTVARIANT": '{"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "required": ["id", "title"], "properties": {"id": {"type": "string", "title": "Product Variant Foreign ID", "description": "A unique identifier for the product variant."}, "title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}', # noqa: E501
+ "MODIFYPRODUCTVARIANT": '{"type": "object", "title": "E-commerce Product Variant", "description": "Information about a specific product variant.", "properties": {"title": {"type": "string", "title": "Title", "description": "The title of a product variant.", "example": "Cat Hat"}, "url": {"type": "string", "title": "URL", "description": "The URL for a product variant."}, "sku": {"type": "string", "title": "SKU", "description": "The stock keeping unit (SKU) of a product variant."}, "price": {"type": "number", "title": "Price", "description": "The price of a product variant."}, "inventory_quantity": {"type": "integer", "title": "Inventory Quantity", "description": "The inventory quantity of a product variant."}, "image_url": {"type": "string", "title": "Image URL", "description": "The image URL for a product variant."}, "backorders": {"type": "string", "title": "Backorders", "description": "The backorders of a product variant."}, "visibility": {"type": "string", "title": "Visibility", "description": "The visibility of a product variant."}}}', # noqa: E501
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/utils.py b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/utils.py
new file mode 100644
index 00000000..1dc4e2ea
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/tools/utils.py
@@ -0,0 +1,31 @@
+"""Utility functions for Mailchimp Marketing API toolkit."""
+
+from typing import TYPE_CHECKING
+
+import httpx
+
+if TYPE_CHECKING:
+ from arcade_tdk import ToolContext
+
+
+async def get_base_url(context: "ToolContext", http_client: httpx.AsyncClient) -> str:
+ """Get Mailchimp API base URL from OAuth token.
+
+ Args:
+ context: The ToolContext containing the auth token
+ http_client: The httpx AsyncClient to use for the request
+
+ Returns:
+ The full Mailchimp API base URL (e.g., "https://us1.api.mailchimp.com/3.0")
+ """
+ auth_token = context.get_auth_token_or_empty()
+ response = await http_client.request(
+ url="https://login.mailchimp.com/oauth2/metadata",
+ method="GET",
+ headers={"Authorization": f"OAuth {auth_token}"},
+ )
+ response.raise_for_status()
+ metadata = response.json()
+ dc = metadata.get("dc", "")
+ subdomain = str(dc) if dc else ""
+ return f"https://{subdomain}.api.mailchimp.com/3.0"
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddAudienceMergeField.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddAudienceMergeField.json
new file mode 100644
index 00000000..3f7f7bf8
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddAudienceMergeField.json
@@ -0,0 +1,392 @@
+{
+ "name": "AddAudienceMergeField",
+ "fully_qualified_name": "MailchimpTransactionApi.AddAudienceMergeField@0.1.0",
+ "description": "Add a new merge field to a specific audience.\n\nThis tool is used to add a new merge field for a specific audience in Mailchimp. It should be called when you need to enhance the audience profile with additional information fields.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_list_id",
+ "required": true,
+ "description": "The unique ID of the Mailchimp audience list to which the merge field will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "merge_field_details",
+ "required": true,
+ "description": "The details for the new merge field, including tag, name, type, required status, default value, visibility, display order, options, and help text.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tag": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field."
+ },
+ "required": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "default_country": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from."
+ },
+ "size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a text field, the default length of the text field."
+ }
+ },
+ "inner_properties": null,
+ "description": "Extra options for some merge field types."
+ },
+ "help_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdMergeFields'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/merge-fields",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "audience_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "merge_field_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tag": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the merge field (audience field)."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "text",
+ "number",
+ "address",
+ "phone",
+ "date",
+ "url",
+ "imageurl",
+ "radio",
+ "dropdown",
+ "birthday",
+ "zip"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field."
+ },
+ "required": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "default_country": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a radio or dropdown non-group field, the available options for contacts to pick from."
+ },
+ "size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a text field, the default length of the text field."
+ }
+ },
+ "inner_properties": null,
+ "description": "Extra options for some merge field types."
+ },
+ "help_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Merge Field\",\n \"description\": \"A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.\",\n \"required\": [\n \"name\",\n \"type\"\n ],\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n \"title\": \"Merge Tag\",\n \"description\": \"The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts).\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Name\",\n \"description\": \"The name of the merge field (audience field).\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Type\",\n \"description\": \"The [type](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for the merge field.\",\n \"enum\": [\n \"text\",\n \"number\",\n \"address\",\n \"phone\",\n \"date\",\n \"url\",\n \"imageurl\",\n \"radio\",\n \"dropdown\",\n \"birthday\",\n \"zip\"\n ]\n },\n \"required\": {\n \"type\": \"boolean\",\n \"title\": \"Required\",\n \"description\": \"Whether the merge field is required to import a contact.\"\n },\n \"default_value\": {\n \"type\": \"string\",\n \"title\": \"Default Value\",\n \"description\": \"The default value for the merge field if `null`.\"\n },\n \"public\": {\n \"type\": \"boolean\",\n \"title\": \"Merge Field Public Status\",\n \"description\": \"Whether the merge field is displayed on the signup form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the merge field displays on the list signup form.\"\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Merge Field Options\",\n \"description\": \"Extra options for some merge field types.\",\n \"properties\": {\n \"default_country\": {\n \"type\": \"integer\",\n \"title\": \"Default Country\",\n \"description\": \"In an address field, the default country code if none supplied.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"phone_format\": {\n \"type\": \"string\",\n \"title\": \"Phone Type\",\n \"description\": \"In a phone field, the phone number type: US or International.\"\n },\n \"date_format\": {\n \"type\": \"string\",\n \"title\": \"Date Type\",\n \"description\": \"In a date or birthday field, the format of the date.\"\n },\n \"choices\": {\n \"type\": \"array\",\n \"title\": \"Choices\",\n \"description\": \"In a radio or dropdown non-group field, the available options for contacts to pick from.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"example\": [\n \"First Choice\",\n \"Second Choice\",\n \"Third Choice\"\n ]\n },\n \"size\": {\n \"type\": \"integer\",\n \"title\": \"Text Field Size\",\n \"description\": \"In a text field, the default length of the text field.\"\n }\n }\n },\n \"help_text\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Help Text\",\n \"description\": \"Extra text to help the subscriber fill out the form.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCampaignFeedback.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCampaignFeedback.json
new file mode 100644
index 00000000..11ef7916
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCampaignFeedback.json
@@ -0,0 +1,206 @@
+{
+ "name": "AddCampaignFeedback",
+ "fully_qualified_name": "MailchimpTransactionApi.AddCampaignFeedback@0.1.0",
+ "description": "Add feedback to a specific Mailchimp campaign.\n\nUse this tool to submit feedback for a particular campaign in Mailchimp. This is helpful when users want to provide input or comments about a campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to which feedback will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "feedback_content",
+ "required": true,
+ "description": "The content of the feedback to be added to the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the feedback."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "message"
+ },
+ {
+ "name": "editable_block_id",
+ "required": false,
+ "description": "The ID of the editable block the feedback addresses in the campaign.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "block_id"
+ },
+ {
+ "name": "is_feedback_complete",
+ "required": false,
+ "description": "Indicates whether the feedback is complete. Use 'true' if complete and 'false' otherwise.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of feedback."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "is_complete"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdFeedback'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/feedback",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "block_id",
+ "tool_parameter_name": "editable_block_id",
+ "description": "The block id for the editable block that the feedback addresses.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "message",
+ "tool_parameter_name": "feedback_content",
+ "description": "The content of the feedback.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the feedback."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "is_complete",
+ "tool_parameter_name": "is_feedback_complete",
+ "description": "The status of feedback.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of feedback."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Feedback\",\n \"description\": \"A specific feedback message from a specific campaign.\",\n \"required\": [\n \"message\"\n ],\n \"properties\": {\n \"block_id\": {\n \"type\": \"integer\",\n \"title\": \"Block ID\",\n \"description\": \"The block id for the editable block that the feedback addresses.\"\n },\n \"message\": {\n \"type\": \"string\",\n \"title\": \"Message\",\n \"description\": \"The content of the feedback.\"\n },\n \"is_complete\": {\n \"type\": \"boolean\",\n \"title\": \"Complete\",\n \"description\": \"The status of feedback.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCartToStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCartToStore.json
new file mode 100644
index 00000000..aaa1d141
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCartToStore.json
@@ -0,0 +1,596 @@
+{
+ "name": "AddCartToStore",
+ "fully_qualified_name": "MailchimpTransactionApi.AddCartToStore@0.1.0",
+ "description": "Add a new cart to an ecommerce store.\n\nThis tool adds a new cart to a specified ecommerce store using Mailchimp Marketing. It should be called when a user needs to create a new cart for a store.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store where the new cart will be added. This is essential to specify the target store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_details",
+ "required": true,
+ "description": "JSON object containing the details of the new cart, including cart ID, customer info, campaign ID, checkout URL, currency code, order total, tax total, and line items.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for a cart."
+ },
+ "checkout_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ }
+ },
+ "description": "An array of the cart's line items."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdCarts'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "cart_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for a cart."
+ },
+ "checkout_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ }
+ },
+ "description": "An array of the cart's line items."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart\",\n \"description\": \"Information about a specific cart.\",\n \"required\": [\n \"id\",\n \"currency_code\",\n \"customer\",\n \"order_total\",\n \"lines\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Cart Foreign ID\",\n \"description\": \"A unique identifier for the cart.\"\n },\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign for a cart.\",\n \"example\": \"839488a60b\"\n },\n \"checkout_url\": {\n \"type\": \"string\",\n \"title\": \"Checkout URL\",\n \"description\": \"The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations.\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the cart uses.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The order total for the cart.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The total tax for the cart.\"\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Cart Line Items\",\n \"description\": \"An array of the cart's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Item Foreign ID\",\n \"description\": \"A unique identifier for the cart line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCustomerToStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCustomerToStore.json
new file mode 100644
index 00000000..39a3e6ff
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddCustomerToStore.json
@@ -0,0 +1,400 @@
+{
+ "name": "AddCustomerToStore",
+ "fully_qualified_name": "MailchimpTransactionApi.AddCustomerToStore@0.1.0",
+ "description": "Add a new customer to an ecommerce store.\n\nThis tool adds a new customer to a specified ecommerce store. It should be called when a new customer needs to be registered in the store's system.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store where the customer will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "customer_data",
+ "required": true,
+ "description": "JSON data containing customer details such as ID, email, phone, opt-in status, name, company, and address.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdCustomers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/customers",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "customer_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer.\",\n \"required\": [\n \"id\",\n \"opt_in_status\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"sms_phone_number\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"A US phone number for SMS contact.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddLineItemToCart.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddLineItemToCart.json
new file mode 100644
index 00000000..01e0fb94
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddLineItemToCart.json
@@ -0,0 +1,305 @@
+{
+ "name": "AddLineItemToCart",
+ "fully_qualified_name": "MailchimpTransactionApi.AddLineItemToCart@0.1.0",
+ "description": "Add a new line item to an existing shopping cart.\n\nUse this tool to add a product to a specific cart by specifying the store and cart IDs. This enables updating shopping carts with new items in an e-commerce context.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store. This is necessary to specify which store's cart will be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "required": true,
+ "description": "The unique identifier for the cart to which the line item will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ },
+ {
+ "name": "cart_line_item_identifier",
+ "required": true,
+ "description": "A unique identifier for the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "A unique identifier for the product to be added to the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "required": true,
+ "description": "A unique identifier for the product variant to be added to the cart. This is necessary to specify which variant of the product is being added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_variant_id"
+ },
+ {
+ "name": "line_item_quantity",
+ "required": true,
+ "description": "The number of units for the specified product variant in the cart.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "quantity"
+ },
+ {
+ "name": "line_item_price",
+ "required": true,
+ "description": "The monetary price for the line item being added to the cart. Must be a numeric value.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "price"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdCartsIdLines'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_identifier",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "id",
+ "tool_parameter_name": "cart_line_item_identifier",
+ "description": "A unique identifier for the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the cart line item."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "A unique identifier for the product associated with the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_variant_id",
+ "tool_parameter_name": "product_variant_id",
+ "description": "A unique identifier for the product variant associated with the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "quantity",
+ "tool_parameter_name": "line_item_quantity",
+ "description": "The quantity of a cart line item.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "price",
+ "tool_parameter_name": "line_item_price",
+ "description": "The price of a cart line item.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Item Foreign ID\",\n \"description\": \"A unique identifier for the cart line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddListMemberEvent.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddListMemberEvent.json
new file mode 100644
index 00000000..0f2abccd
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddListMemberEvent.json
@@ -0,0 +1,239 @@
+{
+ "name": "AddListMemberEvent",
+ "fully_qualified_name": "MailchimpTransactionApi.AddListMemberEvent@0.1.0",
+ "description": "Add an event for a list member in Mailchimp.\n\nThis tool adds an event to a specific list member in Mailchimp. It should be called when you need to track a specific activity or event for a subscriber in a mailing list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_identifier",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "list_member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address, or the email address/contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "event_details",
+ "required": true,
+ "description": "JSON object containing details about the event such as 'name', 'properties', 'is_syncing', and 'occurred_at'.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length"
+ },
+ "properties": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An optional list of properties"
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Events created with the is_syncing value set to `true` will not trigger automations."
+ },
+ "occurred_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the event occurred in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListMemberEvents'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/events",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_identifier",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "list_member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "event_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length"
+ },
+ "properties": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An optional list of properties"
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Events created with the is_syncing value set to `true` will not trigger automations."
+ },
+ "occurred_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the event occurred in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Events\",\n \"description\": \"A new event for a specific list member\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Event Name\",\n \"description\": \"The name for this type of event ('purchased', 'visited', etc). Must be 2-30 characters in length\"\n },\n \"properties\": {\n \"type\": \"object\",\n \"title\": \"Properties\",\n \"description\": \"An optional list of properties\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"Events created with the is_syncing value set to `true` will not trigger automations.\"\n },\n \"occurred_at\": {\n \"type\": \"string\",\n \"title\": \"Occurred Time\",\n \"description\": \"The date and time the event occurred in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddMemberToMailchimpList.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddMemberToMailchimpList.json
new file mode 100644
index 00000000..b464bc6f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddMemberToMailchimpList.json
@@ -0,0 +1,479 @@
+{
+ "name": "AddMemberToMailchimpList",
+ "fully_qualified_name": "MailchimpTransactionApi.AddMemberToMailchimpList@0.1.0",
+ "description": "Add a new member to a Mailchimp list.\n\nUse this tool to add a new subscriber to a specific Mailchimp list. It should be called when you need to manage mailing lists by adding new contacts.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to which a new member will be added. This ID can be found in the Mailchimp account settings.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "new_member_data",
+ "required": true,
+ "description": "Details of the new member to be added, including email, status, and optional fields like merge fields, location, etc.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tags that are associated with a member."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ },
+ {
+ "name": "bypass_merge_field_validation",
+ "required": false,
+ "description": "Set to true to accept member data without required merge fields. Defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "skip_merge_validation"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdMembers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "skip_merge_validation",
+ "tool_parameter_name": "bypass_merge_field_validation",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "new_member_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tags that are associated with a member."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"required\": [\n \"email_address\",\n \"status\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"marketing_permissions\": {\n \"type\": \"array\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"The marketing permissions for the subscriber.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Marketing Permission\",\n \"description\": \"A single marketing permission a subscriber has either opted-in to or opted-out of.\",\n \"properties\": {\n \"marketing_permission_id\": {\n \"type\": \"string\",\n \"title\": \"Marketing Permission ID\",\n \"description\": \"The id for the marketing permission on the list\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"If the subscriber has opted-in to the marketing permission.\"\n }\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags on a member\",\n \"description\": \"The tags that are associated with a member.\",\n \"items\": {\n \"type\": \"string\",\n \"description\": \"The name of the tag that will be associated with this member.\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddMemberToStaticSegment.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddMemberToStaticSegment.json
new file mode 100644
index 00000000..97cfa200
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddMemberToStaticSegment.json
@@ -0,0 +1,173 @@
+{
+ "name": "AddMemberToStaticSegment",
+ "fully_qualified_name": "MailchimpTransactionApi.AddMemberToStaticSegment@0.1.0",
+ "description": "Add a member to a Mailchimp static segment.\n\nUse this tool to add a new member to a specific static segment within a Mailchimp list. This is helpful for updating subscriber lists with targeted segments.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to which the segment belongs.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_id",
+ "required": true,
+ "description": "The unique ID for the segment to which the member will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "segment_id"
+ },
+ {
+ "name": "subscriber_email_address",
+ "required": true,
+ "description": "The email address of the subscriber to be added to the static segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "email_address"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdSegmentsIdMembers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments/{segment_id}/members",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "segment_id",
+ "tool_parameter_name": "segment_id",
+ "description": "The unique id for the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "email_address",
+ "tool_parameter_name": "subscriber_email_address",
+ "description": "Email address for a subscriber.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddNewEcommerceStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddNewEcommerceStore.json
new file mode 100644
index 00000000..b1c425db
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddNewEcommerceStore.json
@@ -0,0 +1,479 @@
+{
+ "name": "AddNewEcommerceStore",
+ "fully_qualified_name": "MailchimpTransactionApi.AddNewEcommerceStore@0.1.0",
+ "description": "Add a new e-commerce store to your Mailchimp account.\n\nUse this tool to add a new store to your Mailchimp account for managing e-commerce activities. Call this tool when you need to integrate a new store with Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "ecommerce_store_details",
+ "required": true,
+ "description": "A JSON object with details about the e-commerce store like id, platform, domain, etc.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the store."
+ },
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the store."
+ },
+ "platform": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store domain. This parameter is required for Connected Sites and Google Ads."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address for the store."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "money_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc."
+ },
+ "primary_locale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The primary locale for the store. For example: `en`, `de`, etc."
+ },
+ "timezone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The timezone for the store."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store phone number."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's mailing address."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the store's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the store is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the store's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for to the store's country."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude of the store location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude of the store location."
+ }
+ },
+ "inner_properties": null,
+ "description": "The store address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStores'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "ecommerce_store_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the store."
+ },
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the store."
+ },
+ "platform": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store domain. This parameter is required for Connected Sites and Google Ads."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address for the store."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "money_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc."
+ },
+ "primary_locale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The primary locale for the store. For example: `en`, `de`, etc."
+ },
+ "timezone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The timezone for the store."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store phone number."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's mailing address."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the store's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the store is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the store's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for to the store's country."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude of the store location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude of the store location."
+ }
+ },
+ "inner_properties": null,
+ "description": "The store address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Store\",\n \"description\": \"An individual store in an account.\",\n \"required\": [\n \"id\",\n \"list_id\",\n \"name\",\n \"currency_code\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Store Foreign ID\",\n \"description\": \"The unique identifier for the store.\",\n \"example\": \"example_store\"\n },\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The unique identifier for the list associated with the store. The `list_id` for a specific store cannot change.\",\n \"example\": \"1a2df69511\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Store Name\",\n \"description\": \"The name of the store.\",\n \"example\": \"Freddie's Cat Hat Emporium\"\n },\n \"platform\": {\n \"type\": \"string\",\n \"title\": \"Platform\",\n \"description\": \"The e-commerce platform of the store.\"\n },\n \"domain\": {\n \"type\": \"string\",\n \"title\": \"Domain\",\n \"description\": \"The store domain. This parameter is required for Connected Sites and Google Ads.\",\n \"example\": \"example.com\"\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations).\"\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The email address for the store.\",\n \"example\": \"freddie@mailchimp.com\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\",\n \"example\": \"USD\"\n },\n \"money_format\": {\n \"type\": \"string\",\n \"title\": \"Money Format\",\n \"description\": \"The currency format for the store. For example: `$`, `\\u00a3`, etc.\",\n \"example\": \"$\"\n },\n \"primary_locale\": {\n \"type\": \"string\",\n \"title\": \"Primary Locale\",\n \"description\": \"The primary locale for the store. For example: `en`, `de`, etc.\",\n \"example\": \"fr\"\n },\n \"timezone\": {\n \"type\": \"string\",\n \"title\": \"Timezone\",\n \"description\": \"The timezone for the store.\",\n \"example\": \"Eastern\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone\",\n \"description\": \"The store phone number.\",\n \"example\": \"+16155550128\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The store address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The store's mailing address.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the store's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the store is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The store's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the store's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The store's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The store's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for to the store's country.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude of the store location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude of the store location.\",\n \"example\": 45.427408\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddNoteToSubscriber.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddNoteToSubscriber.json
new file mode 100644
index 00000000..9d43e831
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddNoteToSubscriber.json
@@ -0,0 +1,173 @@
+{
+ "name": "AddNoteToSubscriber",
+ "fully_qualified_name": "MailchimpTransactionApi.AddNoteToSubscriber@0.1.0",
+ "description": "Add a new note for a specific subscriber in Mailchimp.\n\nUse this tool to add a note to a subscriber's profile in a specific list on Mailchimp. This is useful for keeping track of important information or interactions related to the subscriber.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list. This is required to add a note to a subscriber's profile in the specified list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "required": true,
+ "description": "MD5 hash of the lowercase version of the subscriber's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "subscriber_note_content",
+ "required": false,
+ "description": "The content of the note for a subscriber. It must be limited to 1,000 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "note"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdMembersIdNotes'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/notes",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_email_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "note",
+ "tool_parameter_name": "subscriber_note_content",
+ "description": "The content of the note. Note length is limited to 1,000 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Member Notes\",\n \"description\": \"A specific note for a specific member.\",\n \"properties\": {\n \"note\": {\n \"type\": \"string\",\n \"title\": \"Note\",\n \"description\": \"The content of the note. Note length is limited to 1,000 characters.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrUpdateCustomerInStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrUpdateCustomerInStore.json
new file mode 100644
index 00000000..d1017be2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrUpdateCustomerInStore.json
@@ -0,0 +1,433 @@
+{
+ "name": "AddOrUpdateCustomerInStore",
+ "fully_qualified_name": "MailchimpTransactionApi.AddOrUpdateCustomerInStore@0.1.0",
+ "description": "Add or update a customer in an eCommerce store.\n\nUse this tool to add a new customer or update an existing customer's information in a specific eCommerce store using Mailchimp Marketing.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the eCommerce store where the customer will be added or updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "customer_identifier",
+ "required": true,
+ "description": "The unique identifier for the customer in the specified store. This ID is necessary for adding or updating customer details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "customer_id"
+ },
+ {
+ "name": "customer_data",
+ "required": true,
+ "description": "JSON object containing the customer's unique id, email, phone number, opt-in status, company, name, and address details for addition or update in the store.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'putEcommerceStoresIdCustomersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "http_method": "PUT",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "customer_id",
+ "tool_parameter_name": "customer_identifier",
+ "description": "The id for the customer of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "customer_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "sms_phone_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A US phone number for SMS contact."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\",\n \"opt_in_status\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"sms_phone_number\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"A US phone number for SMS contact.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrUpdateListMember.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrUpdateListMember.json
new file mode 100644
index 00000000..fea3a578
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrUpdateListMember.json
@@ -0,0 +1,524 @@
+{
+ "name": "AddOrUpdateListMember",
+ "fully_qualified_name": "MailchimpTransactionApi.AddOrUpdateListMember@0.1.0",
+ "description": "Add or update a member in a Mailchimp list.\n\nUse this tool to add a new member to a specific Mailchimp list or update the information of an existing member. This is useful for managing list subscriptions effectively.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "unique_list_id",
+ "required": true,
+ "description": "The unique ID identifying the Mailchimp list where members are added or updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "subscriber_identifier",
+ "required": true,
+ "description": "MD5 hash of the lowercase version of the member's email address, email address, or contact ID.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "subscriber_data",
+ "required": true,
+ "description": "JSON object with subscriber details including email, status, merge fields, interests, and more.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber. This value is required only if the email address is not already present on the list."
+ },
+ "status_if_new": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's status. This value is required only if the email address is not already present on the list."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ },
+ {
+ "name": "bypass_merge_field_check",
+ "required": false,
+ "description": "Set to true to allow member data without required merge fields. Defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "skip_merge_validation"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'putListsIdMembersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}",
+ "http_method": "PUT",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "skip_merge_validation",
+ "tool_parameter_name": "bypass_merge_field_check",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "unique_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "subscriber_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber. This value is required only if the email address is not already present on the list."
+ },
+ "status_if_new": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's status. This value is required only if the email address is not already present on the list."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"required\": [\n \"email_address\",\n \"status_if_new\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber. This value is required only if the email address is not already present on the list.\"\n },\n \"status_if_new\": {\n \"type\": \"string\",\n \"title\": \"New Member Status\",\n \"description\": \"Subscriber's status. This value is required only if the email address is not already present on the list.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"marketing_permissions\": {\n \"type\": \"array\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"The marketing permissions for the subscriber.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Marketing Permission\",\n \"description\": \"A single marketing permission a subscriber has either opted-in to or opted-out of.\",\n \"properties\": {\n \"marketing_permission_id\": {\n \"type\": \"string\",\n \"title\": \"Marketing Permission ID\",\n \"description\": \"The id for the marketing permission on the list\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"If the subscriber has opted-in to the marketing permission.\"\n }\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrderLineItem.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrderLineItem.json
new file mode 100644
index 00000000..225f06ce
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrderLineItem.json
@@ -0,0 +1,661 @@
+{
+ "name": "AddOrderLineItem",
+ "fully_qualified_name": "MailchimpTransactionApi.AddOrderLineItem@0.1.0",
+ "description": "Add a new line item to an existing order.\n\nUse this tool to add a new product line to an existing order in an ecommerce store. Ideal for updating orders with additional items, changing quantities, or modifying product details.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store where the order is placed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order in the store, used to specify which order to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "order_line_item_details",
+ "required": true,
+ "description": "JSON details of the new order line item, including product and quantity information.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdOrdersIdLines'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}/lines",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "order_line_item_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Foreign ID\",\n \"description\": \"A unique identifier for the order line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"product\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\",\n \"title\",\n \"variants\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrderToStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrderToStore.json
new file mode 100644
index 00000000..53fd718d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddOrderToStore.json
@@ -0,0 +1,1772 @@
+{
+ "name": "AddOrderToStore",
+ "fully_qualified_name": "MailchimpTransactionApi.AddOrderToStore@0.1.0",
+ "description": "Add a new order to an ecommerce store.\n\nThis tool adds a new order to a specified store using the store's ID. It should be called when you need to record a new purchase or transaction in your ecommerce system.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store where the order will be added. This should be a string value that accurately corresponds to an existing store in the system.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_details",
+ "required": true,
+ "description": "A JSON object containing order details such as customer info, order total, currency, line items, shipping/billing addresses, and more. Required to add a new order.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the shipping address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with the billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order"
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdOrders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "order_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the shipping address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with the billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order"
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order\",\n \"description\": \"Information about a specific order.\",\n \"required\": [\n \"id\",\n \"customer\",\n \"currency_code\",\n \"order_total\",\n \"lines\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Foreign ID\",\n \"description\": \"A unique identifier for the order.\"\n },\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign for an order.\",\n \"example\": \"839488a60b\"\n },\n \"cart_id\": {\n \"type\": \"string\",\n \"title\": \"Cart ID\",\n \"description\": \"A cart id that the order was placed for.\",\n \"example\": \"cart-123\"\n },\n \"landing_site\": {\n \"type\": \"string\",\n \"title\": \"Landing Site\",\n \"description\": \"The URL for the page where the buyer landed when entering the shop.\",\n \"example\": \"http://www.example.com?source=abc\"\n },\n \"financial_status\": {\n \"type\": \"string\",\n \"title\": \"Financial Status\",\n \"description\": \"The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"fulfillment_status\": {\n \"type\": \"string\",\n \"title\": \"Fulfillment Status\",\n \"description\": \"The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The total for the order.\"\n },\n \"order_url\": {\n \"type\": \"string\",\n \"title\": \"Order URL\",\n \"description\": \"The URL for the order.\"\n },\n \"discount_total\": {\n \"type\": \"number\",\n \"title\": \"Discount Total\",\n \"description\": \"The total amount of the discounts to be applied to the price of the order.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The tax total for the order.\"\n },\n \"shipping_total\": {\n \"type\": \"number\",\n \"title\": \"Shipping Total\",\n \"description\": \"The shipping total for the order.\"\n },\n \"tracking_code\": {\n \"type\": \"string\",\n \"enum\": [\n \"prec\"\n ],\n \"title\": \"Tracking Code\",\n \"description\": \"The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.\"\n },\n \"processed_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Processed Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was processed in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"cancelled_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Cancel Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Update Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was updated in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"shipping_address\": {\n \"type\": \"object\",\n \"title\": \"Shipping Address\",\n \"description\": \"The shipping address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's shipping address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The shipping address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the shipping address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the order's shipping address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the order's shipping address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state in the shipping address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the shipping address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the shipping address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the shipping address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the shipping address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the shipping address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the order's shipping address.\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the shipping address.\"\n }\n }\n },\n \"billing_address\": {\n \"type\": \"object\",\n \"title\": \"Billing Address\",\n \"description\": \"The billing address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with the billing address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The billing address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the billing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the billing address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the billing address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province in the billing address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the billing address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the billing address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the billing address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the billing address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the billing address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the billing address\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the billing address.\"\n }\n }\n },\n \"promos\": {\n \"type\": \"array\",\n \"title\": \"Promos\",\n \"description\": \"The promo codes applied on the order\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"code\",\n \"type\",\n \"amount_discounted\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Code\",\n \"description\": \"The Promo Code\"\n },\n \"amount_discounted\": {\n \"type\": \"number\",\n \"title\": \"Amount Discounted\",\n \"description\": \"The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n }\n }\n }\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Order Line Items\",\n \"description\": \"An array of the order's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"required\": [\n \"id\",\n \"product_id\",\n \"product_variant_id\",\n \"quantity\",\n \"price\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Foreign ID\",\n \"description\": \"A unique identifier for the order line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"product\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\",\n \"title\",\n \"variants\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n },\n \"outreach\": {\n \"type\": \"object\",\n \"title\": \"Outreach\",\n \"description\": \"The outreach associated with this order. For example, an email campaign or Facebook ad.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Outreach ID\",\n \"description\": \"A unique identifier for the outreach. Can be an email campaign ID.\",\n \"example\": \"839488a60b\"\n }\n }\n },\n \"tracking_number\": {\n \"type\": \"string\",\n \"title\": \"Tracking number\",\n \"description\": \"The tracking number associated with the order.\"\n },\n \"tracking_carrier\": {\n \"type\": \"string\",\n \"title\": \"Tracking carrier\",\n \"description\": \"The tracking carrier associated with the order.\"\n },\n \"tracking_url\": {\n \"type\": \"string\",\n \"title\": \"Tracking URL\",\n \"description\": \"The tracking URL associated with the order.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductImage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductImage.json
new file mode 100644
index 00000000..6da34a0c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductImage.json
@@ -0,0 +1,239 @@
+{
+ "name": "AddProductImage",
+ "fully_qualified_name": "MailchimpTransactionApi.AddProductImage@0.1.0",
+ "description": "Add a new image to a specific product.\n\nThis tool is used to add a new image to an existing product in a store's e-commerce catalog. It should be called when you need to update the product's visual information by uploading an additional image.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the store where the product is hosted. Required to specify which store's catalog you are updating.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The unique identifier for the product in the store. Required to specify which product the image will be added to.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "required": true,
+ "description": "A unique identifier for the product image to be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "id"
+ },
+ {
+ "name": "product_image_url",
+ "required": true,
+ "description": "The URL of the image to be added to the product.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "url"
+ },
+ {
+ "name": "product_variant_ids",
+ "required": false,
+ "description": "List of product variant IDs using the image.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "variant_ids"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdProductsIdImages'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/images",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "id",
+ "tool_parameter_name": "product_image_id",
+ "description": "A unique identifier for the product image.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "url",
+ "tool_parameter_name": "product_image_url",
+ "description": "The URL for a product image.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "variant_ids",
+ "tool_parameter_name": "product_variant_ids",
+ "description": "The list of product variants using the image.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductToStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductToStore.json
new file mode 100644
index 00000000..1528fadd
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductToStore.json
@@ -0,0 +1,514 @@
+{
+ "name": "AddProductToStore",
+ "fully_qualified_name": "MailchimpTransactionApi.AddProductToStore@0.1.0",
+ "description": "Add a new product to a Mailchimp store.\n\nUse this tool to add a new product to a specific store in Mailchimp. This is useful for updating store inventories or launching new products.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier of the store where the product will be added. This is required to specify the target store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_details",
+ "required": true,
+ "description": "A JSON object containing details about the product to be added, including id, title, handle, URL, description, type, vendor, image, variants, images, and publish date.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdProducts'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "product_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\",\n \"title\",\n \"variants\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductVariantMailchimp.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductVariantMailchimp.json
new file mode 100644
index 00000000..395a1f49
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddProductVariantMailchimp.json
@@ -0,0 +1,319 @@
+{
+ "name": "AddProductVariantMailchimp",
+ "fully_qualified_name": "MailchimpTransactionApi.AddProductVariantMailchimp@0.1.0",
+ "description": "Add a new variant to an existing product in Mailchimp.\n\nThis tool is used to add a new variant to an existing product within a specific store on Mailchimp. Use this when you need to add, update, or expand product options such as sizes or colors within your Mailchimp store.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store where the product variant will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The ID for the product within a store to which a new variant will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_details",
+ "required": true,
+ "description": "JSON object containing details for the new product variant, including id, title, sku, price, and more.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdProductsIdVariants'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/variants",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "product_variant_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddPromoCodeToStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddPromoCodeToStore.json
new file mode 100644
index 00000000..1a0f98d7
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddPromoCodeToStore.json
@@ -0,0 +1,371 @@
+{
+ "name": "AddPromoCodeToStore",
+ "fully_qualified_name": "MailchimpTransactionApi.AddPromoCodeToStore@0.1.0",
+ "description": "Add a new promo code to an ecommerce store.\n\nUse this tool to add a new promotional code to a specific store in the ecommerce platform. This is useful for managing discounts and promotions within the store.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store where the promo code will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_identifier",
+ "required": true,
+ "description": "The ID for the promotional rule associated with the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_identifier",
+ "required": true,
+ "description": "A unique identifier for the promo code. Must be UTF-8, max length 50.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "id"
+ },
+ {
+ "name": "promo_code",
+ "required": true,
+ "description": "The discount code for the promotion. It must be a UTF-8 string, with a maximum length of 50 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "code"
+ },
+ {
+ "name": "promotion_redemption_url",
+ "required": true,
+ "description": "The URL used in the promotion campaign. Must be UTF-8, max length 2000 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "redemption_url"
+ },
+ {
+ "name": "promo_code_usage_count",
+ "required": false,
+ "description": "Number of times the promo code has been used. This integer value helps track the utilization of the promo code.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Number of times promo code has been used."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "usage_count"
+ },
+ {
+ "name": "promotion_creation_datetime",
+ "required": false,
+ "description": "The date and time the promotion was created, in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_at_foreign"
+ },
+ {
+ "name": "promotion_updated_datetime",
+ "required": false,
+ "description": "The date and time the promotion was last updated, in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "updated_at_foreign"
+ },
+ {
+ "name": "is_promo_code_enabled",
+ "required": false,
+ "description": "Specifies if the promo code is enabled. Use true to enable, false to disable.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo code is currently enabled."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "enabled"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdPromocodes'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_identifier",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "id",
+ "tool_parameter_name": "promo_code_identifier",
+ "description": "A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "code",
+ "tool_parameter_name": "promo_code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "redemption_url",
+ "tool_parameter_name": "promotion_redemption_url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "usage_count",
+ "tool_parameter_name": "promo_code_usage_count",
+ "description": "Number of times promo code has been used.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Number of times promo code has been used."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "enabled",
+ "tool_parameter_name": "is_promo_code_enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo code is currently enabled."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_at_foreign",
+ "tool_parameter_name": "promotion_creation_datetime",
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "updated_at_foreign",
+ "tool_parameter_name": "promotion_updated_datetime",
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Code\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Code.\",\n \"required\": [\n \"id\",\n \"code\",\n \"redemption_url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Promo Code Foreign ID\",\n \"description\": \"A unique identifier for the promo code. Restricted to UTF-8 characters with max length 50.\"\n },\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Promo Code\",\n \"description\": \"The discount code. Restricted to UTF-8 characters with max length 50.\",\n \"example\": \"summersale\"\n },\n \"redemption_url\": {\n \"type\": \"string\",\n \"title\": \"Redemption Url\",\n \"description\": \"The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.\",\n \"example\": \"A url that applies promo code directly at checkout or a url that points to sale page or store url\"\n },\n \"usage_count\": {\n \"type\": \"integer\",\n \"title\": \"Promo Code Usage Count\",\n \"description\": \"Number of times promo code has been used.\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo code is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddStorePromoRule.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddStorePromoRule.json
new file mode 100644
index 00000000..1dcbc45b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddStorePromoRule.json
@@ -0,0 +1,332 @@
+{
+ "name": "AddStorePromoRule",
+ "fully_qualified_name": "MailchimpTransactionApi.AddStorePromoRule@0.1.0",
+ "description": "Add a new promo rule to an e-commerce store on Mailchimp.\n\nThis tool is used to add a new promotional rule to a specific e-commerce store within Mailchimp. It is ideal for automating the management of store promotions.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the store where the promo rule will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_details",
+ "required": true,
+ "description": "JSON object containing details of the promo rule, including 'id', 'title', 'description', 'starts_at', 'ends_at', 'amount', 'type', 'target', 'enabled', 'created_at_foreign', and 'updated_at_foreign'. These fields ensure the creation or updating of the promotional rule adheres to specifications, such as format, length, and allowed values.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255."
+ },
+ "starts_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed."
+ },
+ "target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The target that the discount applies to."
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo rule is currently enabled."
+ },
+ "created_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postEcommerceStoresIdPromorules'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "promo_rule_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255."
+ },
+ "starts_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed."
+ },
+ "target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The target that the discount applies to."
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo rule is currently enabled."
+ },
+ "created_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Rule\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Rule.\",\n \"required\": [\n \"id\",\n \"description\",\n \"amount\",\n \"type\",\n \"target\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Promo Rule Foreign ID\",\n \"description\": \"A unique identifier for the promo rule. If Ecommerce platform does not support promo rule, use promo code id as promo rule id. Restricted to UTF-8 characters with max length 50.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.\",\n \"example\": \"50% off Total Order\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a promotion restricted to UTF-8 characters with max length 255.\",\n \"example\": \"Save BIG during our summer sale!\"\n },\n \"starts_at\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Promo Start Time\",\n \"description\": \"The date and time when the promotion is in effect in ISO 8601 format.\"\n },\n \"ends_at\": {\n \"type\": \"string\",\n \"format\": \"Promo date-time\",\n \"title\": \"End Time\",\n \"description\": \"The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format.\"\n },\n \"amount\": {\n \"type\": \"number\",\n \"title\": \"Amount\",\n \"format\": \"float\",\n \"description\": \"The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.\",\n \"example\": 0.5\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed.\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n },\n \"target\": {\n \"type\": \"string\",\n \"title\": \"Target\",\n \"description\": \"The target that the discount applies to.\",\n \"enum\": [\n \"per_item\",\n \"total\",\n \"shipping\"\n ]\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo rule is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddSubscriberToWorkflow.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddSubscriberToWorkflow.json
new file mode 100644
index 00000000..8f89ca17
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddSubscriberToWorkflow.json
@@ -0,0 +1,173 @@
+{
+ "name": "AddSubscriberToWorkflow",
+ "fully_qualified_name": "MailchimpTransactionApi.AddSubscriberToWorkflow@0.1.0",
+ "description": "Add a subscriber to an automation workflow.\n\nUse this tool to manually add a subscriber to a Mailchimp workflow, bypassing default triggers, or to initiate a series of automated emails.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the Automation workflow to which the subscriber will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "workflow_email_id",
+ "required": true,
+ "description": "The unique ID for the Automation workflow email. Required to identify the specific email in the workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ },
+ {
+ "name": "subscriber_email_address",
+ "required": true,
+ "description": "The email address of the subscriber to add to the automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "email_address"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAutomationsIdEmailsIdQueue'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}/queue",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "workflow_email_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "email_address",
+ "tool_parameter_name": "subscriber_email_address",
+ "description": "The list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber in Automation Queue\",\n \"description\": \"Information about subscribers in an Automation email queue.\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The list member's email address.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddVerifiedDomain.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddVerifiedDomain.json
new file mode 100644
index 00000000..b24bc4a0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/AddVerifiedDomain.json
@@ -0,0 +1,107 @@
+{
+ "name": "AddVerifiedDomain",
+ "fully_qualified_name": "MailchimpTransactionApi.AddVerifiedDomain@0.1.0",
+ "description": "Add a verified domain to your Mailchimp account.\n\nUse this tool to add a verified domain to your Mailchimp account. This is useful for managing communication and ensuring trust with your recipients.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "verification_email_address",
+ "required": true,
+ "description": "The email address at the domain to verify, which will receive a two-factor challenge for verification.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "verification_email"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'createVerifiedDomain'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/verified-domains",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "verification_email",
+ "tool_parameter_name": "verification_email_address",
+ "description": "The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Verified Domains\",\n \"description\": \"The verified domains currently on the account.\",\n \"required\": [\n \"verification_email\"\n ],\n \"properties\": {\n \"verification_email\": {\n \"type\": \"string\",\n \"title\": \"Verification Email\",\n \"description\": \"The e-mail address at the domain you want to verify. This will receive a two-factor challenge to be used in the verify action.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveContactMailchimp.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveContactMailchimp.json
new file mode 100644
index 00000000..28d2e9f5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveContactMailchimp.json
@@ -0,0 +1,140 @@
+{
+ "name": "ArchiveContactMailchimp",
+ "fully_qualified_name": "MailchimpTransactionApi.ArchiveContactMailchimp@0.1.0",
+ "description": "Archives a contact in a Mailchimp audience.\n\nThis tool archives a specific contact within a given audience in Mailchimp. Use this when you need to remove a contact from active participation without deleting them permanently.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp audience where the contact will be archived.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "audience_id"
+ },
+ {
+ "name": "contact_id",
+ "required": true,
+ "description": "The unique identifier for the contact to archive within the audience in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "contact_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAudiencesContactsActionsArchive'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences/{audience_id}/contacts/{contact_id}/actions/archive",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "audience_id",
+ "tool_parameter_name": "audience_unique_id",
+ "description": "The unique ID for the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "contact_id",
+ "tool_parameter_name": "contact_id",
+ "description": "The unique id for the contact.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveListMember.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveListMember.json
new file mode 100644
index 00000000..e83ea971
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveListMember.json
@@ -0,0 +1,140 @@
+{
+ "name": "ArchiveListMember",
+ "fully_qualified_name": "MailchimpTransactionApi.ArchiveListMember@0.1.0",
+ "description": "Archives a member from a Mailchimp list.\n\nUse this tool to archive a member from a specific Mailchimp list when they should no longer receive communications. Note that this is not a permanent deletion.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "mailing_list_id",
+ "required": true,
+ "description": "The unique identifier for the specific Mailchimp list to archive a member from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address, or use the email address/contact_id directly.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdMembersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailing_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveMailchimpAutomation.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveMailchimpAutomation.json
new file mode 100644
index 00000000..961a8ce5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ArchiveMailchimpAutomation.json
@@ -0,0 +1,107 @@
+{
+ "name": "ArchiveMailchimpAutomation",
+ "fully_qualified_name": "MailchimpTransactionApi.ArchiveMailchimpAutomation@0.1.0",
+ "description": "Permanently archive a Mailchimp automation.\n\nUse this tool to permanently archive a Mailchimp automation workflow. Once archived, the automation cannot be restarted, but the report data will be kept. You can replicate the archived automation if needed.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp automation workflow to archive. This ID is necessary to specify which automation you want to permanently end.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'archiveAutomations'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/actions/archive",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CancelBatchRequest.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CancelBatchRequest.json
new file mode 100644
index 00000000..4e1ed201
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CancelBatchRequest.json
@@ -0,0 +1,107 @@
+{
+ "name": "CancelBatchRequest",
+ "fully_qualified_name": "MailchimpTransactionApi.CancelBatchRequest@0.1.0",
+ "description": "Cancels a running batch request to stop its execution.\n\nThis tool stops a batch request from running in Mailchimp Marketing. It should be called to cancel a long-running batch request. After calling this, results of any completed operations in the batch will not be available.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "batch_request_id",
+ "required": true,
+ "description": "The unique identifier for the batch request you want to cancel.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch operation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "batch_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteBatchesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batches/{batch_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "batch_id",
+ "tool_parameter_name": "batch_request_id",
+ "description": "The unique id for the batch operation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch operation."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CancelCampaignSend.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CancelCampaignSend.json
new file mode 100644
index 00000000..43a99862
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CancelCampaignSend.json
@@ -0,0 +1,107 @@
+{
+ "name": "CancelCampaignSend",
+ "fully_qualified_name": "MailchimpTransactionApi.CancelCampaignSend@0.1.0",
+ "description": "Cancel a sent campaign before all recipients receive it.\n\nUse to cancel a Regular or Plain-Text Campaign that has been sent, but not yet delivered to all recipients. Requires Mailchimp Pro.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_identifier",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to be canceled. Used to specify which campaign's delivery is to be stopped.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsCancelSend'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/cancel-send",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_identifier",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CheckMailchimpApiHealth.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CheckMailchimpApiHealth.json
new file mode 100644
index 00000000..ac4bd0ed
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CheckMailchimpApiHealth.json
@@ -0,0 +1,72 @@
+{
+ "name": "CheckMailchimpApiHealth",
+ "fully_qualified_name": "MailchimpTransactionApi.CheckMailchimpApiHealth@0.1.0",
+ "description": "Checks the health status of the Mailchimp API.\n\nUse this tool to verify the operational status of the Mailchimp Marketing API and ensure it's running without issues. This check does not return account-specific data.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": []
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getPing'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ping",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ConfigureWebhookOnBatchComplete.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ConfigureWebhookOnBatchComplete.json
new file mode 100644
index 00000000..3172f90a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ConfigureWebhookOnBatchComplete.json
@@ -0,0 +1,140 @@
+{
+ "name": "ConfigureWebhookOnBatchComplete",
+ "fully_qualified_name": "MailchimpTransactionApi.ConfigureWebhookOnBatchComplete@0.1.0",
+ "description": "Configure a webhook for batch processing completion alerts.\n\nThis tool allows you to configure a webhook that triggers when any batch request completes processing in Mailchimp. Useful for automating follow-up actions based on batch completion events.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "webhook_url",
+ "required": true,
+ "description": "The URL where the webhook payload will be sent upon batch completion. It must be a valid and accessible URL.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "url"
+ },
+ {
+ "name": "webhook_enabled",
+ "required": false,
+ "description": "Set to True to enable the webhook to receive requests when batch processing completes.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook receives requests or not."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "enabled"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postBatchWebhooks'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batch-webhooks",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "url",
+ "tool_parameter_name": "webhook_url",
+ "description": "A valid URL for the Webhook.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "enabled",
+ "tool_parameter_name": "webhook_enabled",
+ "description": "Whether the webhook receives requests or not.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook receives requests or not."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Batch Webhook\",\n \"description\": \"Add a new Batch Webook.\",\n \"required\": [\n \"url\"\n ],\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the webhook receives requests or not.\",\n \"example\": true\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateAudienceContact.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateAudienceContact.json
new file mode 100644
index 00000000..b60539ae
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateAudienceContact.json
@@ -0,0 +1,410 @@
+{
+ "name": "CreateAudienceContact",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateAudienceContact@0.1.0",
+ "description": "Create a new omni-channel contact for an audience.\n\nUse this tool to add a new contact to a Mailchimp audience for omni-channel marketing.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_unique_id",
+ "required": true,
+ "description": "The unique identifier for the audience in Mailchimp where the contact will be added. This ID is necessary to specify the target audience for the new contact.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "audience_id"
+ },
+ {
+ "name": "contact_details_json",
+ "required": true,
+ "description": "JSON object containing contact details such as language, email, SMS info, merge fields, and tags for the new audience member.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscribers detected language."
+ },
+ "email_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "confirmed",
+ "consented",
+ "denied",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Status of a contacts Marketing Consent"
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "sms_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sms_phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "SMS Phone Number"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "confirmed",
+ "consented",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The current consent status captured for a contact\u2019s marketing communications."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ },
+ {
+ "name": "merge_field_validation_mode",
+ "required": false,
+ "description": "Choose 'ignore_required_checks' to skip validation on required merge fields, or 'strict' to enforce validation. Defaults to 'strict' if not set.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "merge_field_validation_mode"
+ },
+ {
+ "name": "data_processing_mode",
+ "required": false,
+ "description": "Selects the data processing mode: 'historical' mode skips automations and webhooks, 'live' mode triggers them.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "data_mode"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'createAudienceContact'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences/{audience_id}/contacts",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "merge_field_validation_mode",
+ "tool_parameter_name": "merge_field_validation_mode",
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "data_mode",
+ "tool_parameter_name": "data_processing_mode",
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "audience_id",
+ "tool_parameter_name": "audience_unique_id",
+ "description": "The unique ID for the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "contact_details_json",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscribers detected language."
+ },
+ "email_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "confirmed",
+ "consented",
+ "denied",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Status of a contacts Marketing Consent"
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "sms_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sms_phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "SMS Phone Number"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "confirmed",
+ "consented",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The current consent status captured for a contact\u2019s marketing communications."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"description\": \"An instance of a contact.\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The subscribers detected language.\",\n \"example\": \"EN\"\n },\n \"email_channel\": {\n \"type\": \"object\",\n \"title\": \"Email Channel Details\",\n \"properties\": {\n \"email\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address\",\n \"example\": \"example@freddiemail.com\"\n },\n \"marketing_consent\": {\n \"type\": \"object\",\n \"title\": \"Marketing Consent Details\",\n \"description\": \"A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"description\": \"Status of a contacts Marketing Consent\",\n \"enum\": [\n \"confirmed\",\n \"consented\",\n \"denied\",\n \"unknown\"\n ],\n \"example\": \"confirmed\"\n }\n }\n }\n }\n },\n \"sms_channel\": {\n \"type\": \"object\",\n \"title\": \"SMS Channel Details\",\n \"properties\": {\n \"sms_phone\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"SMS Phone Number\",\n \"example\": \"+16155550128\"\n },\n \"marketing_consent\": {\n \"type\": \"object\",\n \"title\": \"Marketing Consent Details\",\n \"description\": \"A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"description\": \"The current consent status captured for a contact\\u2019s marketing communications.\",\n \"enum\": [\n \"confirmed\",\n \"consented\",\n \"unknown\"\n ],\n \"example\": \"confirmed\"\n }\n }\n }\n }\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags\",\n \"description\": \"An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.\",\n \"items\": {\n \"type\": \"string\",\n \"title\": \"Tag Name\"\n },\n \"example\": [\n \"new_tag\",\n \"another_tag\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateCampaignFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateCampaignFolder.json
new file mode 100644
index 00000000..5b78d17a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateCampaignFolder.json
@@ -0,0 +1,107 @@
+{
+ "name": "CreateCampaignFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateCampaignFolder@0.1.0",
+ "description": "Create a new campaign folder in Mailchimp.\n\nThis tool is used to create a new campaign folder within Mailchimp marketing. Call this tool when you need to organize campaigns into folders for better management.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "folder_name",
+ "required": true,
+ "description": "The name to assign to the new campaign folder. It should be a descriptive string that helps identify the folder's contents.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Name to associate with the folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignFolders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaign-folders",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "name",
+ "tool_parameter_name": "folder_name",
+ "description": "Name to associate with the folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Name to associate with the folder."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Folder\",\n \"description\": \"A folder used to organize campaigns.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"Name to associate with the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateInterestCategory.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateInterestCategory.json
new file mode 100644
index 00000000..3fca7b65
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateInterestCategory.json
@@ -0,0 +1,216 @@
+{
+ "name": "CreateInterestCategory",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateInterestCategory@0.1.0",
+ "description": "Create a new interest category in a Mailchimp list.\n\nThis tool is used to create a new interest category for a specified Mailchimp list. It is useful when you want to categorize subscriber interests within a list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID identifying the Mailchimp list where the interest category will be created.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "category_description",
+ "required": true,
+ "description": "Text description of the interest category. Appears on signup forms, often phrased as a question.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "title"
+ },
+ {
+ "name": "category_display_type",
+ "required": true,
+ "description": "Determines how the interest category appears on signup forms. Options include: 'checkboxes', 'dropdown', 'radio', or 'hidden'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines how this category\u2019s interests appear on signup forms."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "category_display_order",
+ "required": false,
+ "description": "The numerical order for displaying categories. Lower numbers appear first.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "display_order"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdInterestCategories'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "title",
+ "tool_parameter_name": "category_description",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "display_order",
+ "tool_parameter_name": "category_display_order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "category_display_type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines how this category\u2019s interests appear on signup forms."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest Category\",\n \"description\": \"Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.\",\n \"required\": [\n \"title\",\n \"type\"\n ],\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The text description of this category. This field appears on signup forms and is often phrased as a question.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the categories are displayed in the list. Lower numbers display first.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Display Type\",\n \"description\": \"Determines how this category\\u2019s interests appear on signup forms.\",\n \"enum\": [\n \"checkboxes\",\n \"dropdown\",\n \"radio\",\n \"hidden\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateInterestGroup.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateInterestGroup.json
new file mode 100644
index 00000000..e51048b8
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateInterestGroup.json
@@ -0,0 +1,206 @@
+{
+ "name": "CreateInterestGroup",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateInterestGroup@0.1.0",
+ "description": "Create a new interest group for a specific category.\n\nThis tool is used to create a new interest or 'group name' within a specific interest category for a Mailchimp list. Use it when you need to organize and segment your list subscribers into specific interest groups.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to which the interest group will be added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_unique_id",
+ "required": true,
+ "description": "The unique ID for the interest category to which the new group belongs.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "interest_group_name",
+ "required": true,
+ "description": "The name of the interest group, shown publicly on subscription forms.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "interest_display_order",
+ "required": false,
+ "description": "The order in which this interest is displayed relative to others. Use an integer value.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The display order for interests."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "display_order"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdInterestCategoriesIdInterests'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}/interests",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_unique_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "interest_group_name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "display_order",
+ "tool_parameter_name": "interest_display_order",
+ "description": "The display order for interests.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The display order for interests."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest\",\n \"description\": \"Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Interest Name\",\n \"description\": \"The name of the interest. This can be shown publicly on a subscription form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The display order for interests.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpAccountExport.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpAccountExport.json
new file mode 100644
index 00000000..d65099fb
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpAccountExport.json
@@ -0,0 +1,140 @@
+{
+ "name": "CreateMailchimpAccountExport",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpAccountExport@0.1.0",
+ "description": "Create a new account export in your Mailchimp account.\n\nThis tool initiates a new export of account data in your Mailchimp account. Use this when you need to generate and download account information from Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "include_export_stages",
+ "required": true,
+ "description": "Array of export stages to include in the account export.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stages of an account export to include."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_stages"
+ },
+ {
+ "name": "export_starting_date",
+ "required": false,
+ "description": "An ISO 8601 date to limit export to records created after this time. Excludes audiences.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_timestamp"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAccountExport'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/account-exports",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "include_stages",
+ "tool_parameter_name": "include_export_stages",
+ "description": "The stages of an account export to include.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stages of an account export to include."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_timestamp",
+ "tool_parameter_name": "export_starting_date",
+ "description": "An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Create an account export\",\n \"description\": \"Creates an account export with the given parameters.\",\n \"required\": [\n \"include_stages\"\n ],\n \"properties\": {\n \"include_stages\": {\n \"type\": \"array\",\n \"title\": \"Include Stages\",\n \"description\": \"The stages of an account export to include.\",\n \"example\": \"[\\\"audiences\\\", \\\"gallery_files\\\"]\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": [\n \"audiences\",\n \"campaigns\",\n \"events\",\n \"gallery_files\",\n \"reports\",\n \"templates\"\n ]\n }\n },\n \"since_timestamp\": {\n \"type\": \"string\",\n \"title\": \"Since Timestamp\",\n \"format\": \"date-time\",\n \"description\": \"An ISO 8601 date that will limit the export to only records created after a given time. For instance, the reports stage will contain any campaign sent after the given timestamp. Audiences, however, are excluded from this limit.\",\n \"example\": \"2021-08-23T14:15:09Z\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpAutomation.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpAutomation.json
new file mode 100644
index 00000000..42594144
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpAutomation.json
@@ -0,0 +1,239 @@
+{
+ "name": "CreateMailchimpAutomation",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpAutomation@0.1.0",
+ "description": "Create a new classic automation in Mailchimp.\n\nThis tool initiates the creation of a new classic automation within your Mailchimp account, facilitating automated email campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_type",
+ "required": true,
+ "description": "Specify the type of Automation workflow. Currently, only 'abandonedCart' is supported.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of Automation workflow. Currently only supports 'abandonedCart'."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "trigger_settings.workflow_type"
+ },
+ {
+ "name": "list_id",
+ "required": false,
+ "description": "The unique identifier for the Mailchimp List to target with the automation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the List."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "recipients.list_id"
+ },
+ {
+ "name": "store_id",
+ "required": false,
+ "description": "The unique identifier for the store in Mailchimp. Required to target specific automation to a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "recipients.store_id"
+ },
+ {
+ "name": "automation_from_name",
+ "required": false,
+ "description": "The 'from' name to display in the new automation emails. It should be an easily recognizable name for recipients.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "settings.from_name"
+ },
+ {
+ "name": "reply_to_email_address",
+ "required": false,
+ "description": "The reply-to email address for the automation in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the Automation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "settings.reply_to"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAutomations'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "recipients.list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The id of the List.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the List."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "recipients.store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The id of the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the store."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "settings.from_name",
+ "tool_parameter_name": "automation_from_name",
+ "description": "The 'from' name for the Automation (not an email address).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "settings.reply_to",
+ "tool_parameter_name": "reply_to_email_address",
+ "description": "The reply-to email address for the Automation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the Automation."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "trigger_settings.workflow_type",
+ "tool_parameter_name": "automation_workflow_type",
+ "description": "The type of Automation workflow. Currently only supports 'abandonedCart'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of Automation workflow. Currently only supports 'abandonedCart'."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Automation Workflow\",\n \"description\": \"A summary of an individual Automation workflow's settings and content.\",\n \"required\": [\n \"recipients\",\n \"trigger_settings\"\n ],\n \"properties\": {\n \"recipients\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"List settings for the Automation.\",\n \"properties\": {\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The id of the List.\",\n \"example\": \"1a2df69xxx\"\n },\n \"store_id\": {\n \"type\": \"string\",\n \"title\": \"Store ID\",\n \"description\": \"The id of the store.\",\n \"example\": \"1a2df69xxx\"\n }\n }\n },\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Automation Campaign Settings\",\n \"description\": \"The settings for the Automation workflow.\",\n \"properties\": {\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name for the Automation (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the Automation.\"\n }\n }\n },\n \"trigger_settings\": {\n \"type\": \"object\",\n \"title\": \"Automation Trigger\",\n \"description\": \"Trigger settings for the Automation.\",\n \"required\": [\n \"workflow_type\"\n ],\n \"properties\": {\n \"workflow_type\": {\n \"type\": \"string\",\n \"title\": \"Workflow Type\",\n \"description\": \"The type of Automation workflow. Currently only supports 'abandonedCart'.\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpCampaign.json
new file mode 100644
index 00000000..2399282e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpCampaign.json
@@ -0,0 +1,1229 @@
+{
+ "name": "CreateMailchimpCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpCampaign@0.1.0",
+ "description": "Create a new Mailchimp campaign quickly.\n\nThis tool is used to initiate a new email campaign via Mailchimp. It should be called when a user wants to create and configure a marketing email or advertisement using Mailchimp's services.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_details",
+ "required": true,
+ "description": "JSON object detailing the campaign type, recipients, settings, tracking options, and more.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead."
+ },
+ "recipients": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "saved_segment_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Segment match type."
+ },
+ "conditions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ }
+ },
+ "inner_properties": null,
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options."
+ }
+ },
+ "inner_properties": null,
+ "description": "List settings for the campaign."
+ },
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending."
+ },
+ "use_conversation": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to."
+ },
+ "fb_comments": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more."
+ },
+ "variate_settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "winner_criteria": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application."
+ },
+ "wait_time": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used."
+ },
+ "send_times": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored."
+ },
+ "from_names": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used."
+ },
+ "reply_to_addresses": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings specific to A/B test campaigns."
+ },
+ "tracking": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opens": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "capsule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ }
+ },
+ "inner_properties": null,
+ "description": "The tracking options for a campaign."
+ },
+ "rss_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "feed_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The frequency of the RSS Campaign."
+ },
+ "schedule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "hour": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sunday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ },
+ "inner_properties": null,
+ "description": "The days of the week to send a daily RSS Campaign."
+ },
+ "weekly_send_day": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ },
+ "inner_properties": null,
+ "description": "The schedule for sending the RSS Campaign."
+ },
+ "constrain_rss_img": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "inner_properties": null,
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign."
+ },
+ "social_card": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ },
+ "inner_properties": null,
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/)."
+ },
+ "content_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "template",
+ "multichannel"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "How the campaign's content is put together. The old drag and drop editor uses 'template' while the new editor uses 'multichannel'. Defaults to template."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaigns'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "campaign_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "regular",
+ "plaintext",
+ "absplit",
+ "rss",
+ "variate"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead."
+ },
+ "recipients": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "saved_segment_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for an existing saved segment."
+ },
+ "match": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Segment match type."
+ },
+ "conditions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ }
+ },
+ "inner_properties": null,
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options."
+ }
+ },
+ "inner_properties": null,
+ "description": "List settings for the campaign."
+ },
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending."
+ },
+ "use_conversation": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to."
+ },
+ "fb_comments": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more."
+ },
+ "variate_settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "winner_criteria": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application."
+ },
+ "wait_time": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used."
+ },
+ "send_times": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored."
+ },
+ "from_names": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used."
+ },
+ "reply_to_addresses": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings specific to A/B test campaigns."
+ },
+ "tracking": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opens": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "capsule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ }
+ },
+ "inner_properties": null,
+ "description": "The tracking options for a campaign."
+ },
+ "rss_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "feed_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The frequency of the RSS Campaign."
+ },
+ "schedule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "hour": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sunday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ },
+ "inner_properties": null,
+ "description": "The days of the week to send a daily RSS Campaign."
+ },
+ "weekly_send_day": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ },
+ "inner_properties": null,
+ "description": "The schedule for sending the RSS Campaign."
+ },
+ "constrain_rss_img": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "inner_properties": null,
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign."
+ },
+ "social_card": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ },
+ "inner_properties": null,
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/)."
+ },
+ "content_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "template",
+ "multichannel"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "How the campaign's content is put together. The old drag and drop editor uses 'template' while the new editor uses 'multichannel'. Defaults to template."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign\",\n \"description\": \"A summary of an individual campaign's settings and content.\",\n \"required\": [\n \"type\"\n ],\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Campaign Type\",\n \"description\": \"There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.\",\n \"enum\": [\n \"regular\",\n \"plaintext\",\n \"absplit\",\n \"rss\",\n \"variate\"\n ]\n },\n \"recipients\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"List settings for the campaign.\",\n \"required\": [\n \"list_id\"\n ],\n \"properties\": {\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The unique list id.\"\n },\n \"segment_opts\": {\n \"type\": \"object\",\n \"title\": \"Segment Options\",\n \"description\": \"An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.\",\n \"properties\": {\n \"saved_segment_id\": {\n \"type\": \"integer\",\n \"title\": \"Saved Segment ID\",\n \"description\": \"The id for an existing saved segment.\"\n },\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match Type\",\n \"description\": \"Segment match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n },\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Campaign Settings\",\n \"description\": \"The settings for your campaign, including subject, from name, reply-to address, and more.\",\n \"properties\": {\n \"subject_line\": {\n \"type\": \"string\",\n \"title\": \"Campaign Subject Line\",\n \"description\": \"The subject line for the campaign.\"\n },\n \"preview_text\": {\n \"type\": \"string\",\n \"title\": \"Campaign Preview Text\",\n \"description\": \"The preview text for the campaign.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Campaign Title\",\n \"description\": \"The title of the campaign.\"\n },\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name on the campaign (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending.\"\n },\n \"use_conversation\": {\n \"type\": \"boolean\",\n \"title\": \"Conversation\",\n \"description\": \"Use Mailchimp Conversation feature to manage out-of-office replies.\"\n },\n \"to_name\": {\n \"type\": \"string\",\n \"title\": \"To Name\",\n \"description\": \"The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/).\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"If the campaign is listed in a folder, the id for that folder.\"\n },\n \"authenticate\": {\n \"type\": \"boolean\",\n \"title\": \"Authentication\",\n \"description\": \"Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`.\"\n },\n \"auto_footer\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Footer\",\n \"description\": \"Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign.\"\n },\n \"inline_css\": {\n \"type\": \"boolean\",\n \"title\": \"Inline CSS\",\n \"description\": \"Automatically inline the CSS included with the campaign content.\"\n },\n \"auto_tweet\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Tweet\",\n \"description\": \"Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent.\"\n },\n \"auto_fb_post\": {\n \"type\": \"array\",\n \"title\": \"Auto Post to Facebook\",\n \"description\": \"An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"fb_comments\": {\n \"type\": \"boolean\",\n \"title\": \"Facebook Comments\",\n \"description\": \"Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`.\"\n },\n \"template_id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n }\n }\n },\n \"variate_settings\": {\n \"type\": \"object\",\n \"title\": \"A/B Test Options\",\n \"description\": \"The settings specific to A/B test campaigns.\",\n \"required\": [\n \"winner_criteria\"\n ],\n \"properties\": {\n \"winner_criteria\": {\n \"type\": \"string\",\n \"title\": \"Winning Criteria\",\n \"description\": \"The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.\",\n \"enum\": [\n \"opens\",\n \"clicks\",\n \"manual\",\n \"total_revenue\"\n ]\n },\n \"wait_time\": {\n \"type\": \"integer\",\n \"title\": \"Wait Time\",\n \"description\": \"The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes.\"\n },\n \"test_size\": {\n \"type\": \"integer\",\n \"title\": \"Test Size\",\n \"description\": \"The percentage of recipients to send the test combinations to, must be a value between 10 and 100.\"\n },\n \"subject_lines\": {\n \"type\": \"array\",\n \"title\": \"Subject Lines\",\n \"description\": \"The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"send_times\": {\n \"type\": \"array\",\n \"title\": \"Send Times\",\n \"description\": \"The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.\",\n \"items\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"from_names\": {\n \"type\": \"array\",\n \"title\": \"From Names\",\n \"description\": \"The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"reply_to_addresses\": {\n \"type\": \"array\",\n \"title\": \"Reply To Addresses\",\n \"description\": \"The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Campaign Tracking Options\",\n \"description\": \"The tracking options for a campaign.\",\n \"properties\": {\n \"opens\": {\n \"type\": \"boolean\",\n \"title\": \"Opens\",\n \"description\": \"Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"html_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"HTML Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"text_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"Plain-Text Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"goal_tracking\": {\n \"type\": \"boolean\",\n \"title\": \"Mailchimp Goal Tracking\",\n \"description\": \"Deprecated\"\n },\n \"ecomm360\": {\n \"type\": \"boolean\",\n \"title\": \"E-commerce Tracking\",\n \"description\": \"Whether to enable e-commerce tracking.\"\n },\n \"google_analytics\": {\n \"type\": \"string\",\n \"title\": \"Google Analytics Tracking\",\n \"description\": \"The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes).\"\n },\n \"clicktale\": {\n \"type\": \"string\",\n \"title\": \"ClickTale Analytics Tracking\",\n \"description\": \"The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes).\"\n },\n \"salesforce\": {\n \"type\": \"object\",\n \"title\": \"Salesforce CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Campaign\",\n \"description\": \"Create a campaign in a connected Salesforce account.\"\n },\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n },\n \"capsule\": {\n \"type\": \"object\",\n \"title\": \"Capsule CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Capsule Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n }\n }\n },\n \"rss_opts\": {\n \"type\": \"object\",\n \"title\": \"RSS Options\",\n \"description\": \"[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options, specific to an RSS campaign.\",\n \"required\": [\n \"feed_url\",\n \"frequency\"\n ],\n \"properties\": {\n \"feed_url\": {\n \"type\": \"string\",\n \"title\": \"Feed URL\",\n \"format\": \"uri\",\n \"description\": \"The URL for the RSS feed.\"\n },\n \"frequency\": {\n \"type\": \"string\",\n \"title\": \"Frequency\",\n \"description\": \"The frequency of the RSS Campaign.\",\n \"enum\": [\n \"daily\",\n \"weekly\",\n \"monthly\"\n ]\n },\n \"schedule\": {\n \"type\": \"object\",\n \"title\": \"Sending Schedule\",\n \"description\": \"The schedule for sending the RSS Campaign.\",\n \"properties\": {\n \"hour\": {\n \"type\": \"integer\",\n \"minimum\": 0,\n \"maximum\": 23,\n \"title\": \"Sending Hour\",\n \"description\": \"The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/).\"\n },\n \"daily_send\": {\n \"type\": \"object\",\n \"title\": \"Daily Sending Days\",\n \"description\": \"The days of the week to send a daily RSS Campaign.\",\n \"properties\": {\n \"sunday\": {\n \"type\": \"boolean\",\n \"title\": \"Sunday\",\n \"description\": \"Sends the daily RSS Campaign on Sundays.\"\n },\n \"monday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Mondays.\"\n },\n \"tuesday\": {\n \"type\": \"boolean\",\n \"title\": \"tuesday\",\n \"description\": \"Sends the daily RSS Campaign on Tuesdays.\"\n },\n \"wednesday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Wednesdays.\"\n },\n \"thursday\": {\n \"type\": \"boolean\",\n \"title\": \"Thursday\",\n \"description\": \"Sends the daily RSS Campaign on Thursdays.\"\n },\n \"friday\": {\n \"type\": \"boolean\",\n \"title\": \"Friday\",\n \"description\": \"Sends the daily RSS Campaign on Fridays.\"\n },\n \"saturday\": {\n \"type\": \"boolean\",\n \"title\": \"Saturday\",\n \"description\": \"Sends the daily RSS Campaign on Saturdays.\"\n }\n }\n },\n \"weekly_send_day\": {\n \"type\": \"string\",\n \"enum\": [\n \"sunday\",\n \"monday\",\n \"tuesday\",\n \"wednesday\",\n \"thursday\",\n \"friday\",\n \"saturday\"\n ],\n \"title\": \"Weekly Sending Day\",\n \"description\": \"The day of the week to send a weekly RSS Campaign.\"\n },\n \"monthly_send_date\": {\n \"type\": \"number\",\n \"minimum\": 0,\n \"maximum\": 31,\n \"title\": \"Monthly Sending Day\",\n \"description\": \"The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February.\"\n }\n }\n },\n \"constrain_rss_img\": {\n \"type\": \"boolean\",\n \"title\": \"Constrain RSS Images\",\n \"description\": \"Whether to add CSS to images in the RSS feed to constrain their width in campaigns.\"\n }\n }\n },\n \"social_card\": {\n \"type\": \"object\",\n \"title\": \"Campaign Social Card\",\n \"description\": \"The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).\",\n \"properties\": {\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The url for the header image for the card.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Campaign Description\",\n \"description\": \"A short summary of the campaign to display.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title for the card. Typically the subject line of the campaign.\"\n }\n }\n },\n \"content_type\": {\n \"type\": \"string\",\n \"title\": \"Content Type\",\n \"description\": \"How the campaign's content is put together. The old drag and drop editor uses 'template' while the new editor uses 'multichannel'. Defaults to template.\",\n \"example\": \"template\",\n \"enum\": [\n \"template\",\n \"multichannel\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpConnectedSite.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpConnectedSite.json
new file mode 100644
index 00000000..7540b87c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpConnectedSite.json
@@ -0,0 +1,140 @@
+{
+ "name": "CreateMailchimpConnectedSite",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpConnectedSite@0.1.0",
+ "description": "Create a new Mailchimp connected site.\n\nThis tool is used to create a new connected site in Mailchimp. It should be called whenever you need to integrate a new site with Mailchimp's marketing tools.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "site_unique_identifier",
+ "required": true,
+ "description": "A unique identifier string for the site. This is used to distinguish different connected sites in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "foreign_id"
+ },
+ {
+ "name": "connected_site_domain",
+ "required": true,
+ "description": "The domain of the site you want to connect to Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The connected site domain."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "domain"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postConnectedSites'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/connected-sites",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "foreign_id",
+ "tool_parameter_name": "site_unique_identifier",
+ "description": "The unique identifier for the site.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "domain",
+ "tool_parameter_name": "connected_site_domain",
+ "description": "The connected site domain.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The connected site domain."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Connected Site\",\n \"description\": \"Information about a specific connected site.\",\n \"required\": [\n \"foreign_id\",\n \"domain\"\n ],\n \"properties\": {\n \"foreign_id\": {\n \"type\": \"string\",\n \"title\": \"Connected Site Foreign ID\",\n \"description\": \"The unique identifier for the site.\",\n \"example\": \"MC001\"\n },\n \"domain\": {\n \"type\": \"string\",\n \"title\": \"Domain\",\n \"description\": \"The connected site domain.\",\n \"example\": \"example.com\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpLandingPage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpLandingPage.json
new file mode 100644
index 00000000..ff2065f6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpLandingPage.json
@@ -0,0 +1,410 @@
+{
+ "name": "CreateMailchimpLandingPage",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpLandingPage@0.1.0",
+ "description": "Create an unpublished Mailchimp landing page.\n\nThis tool is used to create a new, unpublished landing page in Mailchimp without any content. It should be called when there's a need to set up a basic landing page framework in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "use_account_default_list",
+ "required": false,
+ "description": "Set to 'true' to use the account's default list instead of specifying a list_id for the landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Will create the Landing Page using the account's Default List instead of requiring a list_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "use_default_list"
+ },
+ {
+ "name": "landing_page_name",
+ "required": false,
+ "description": "The name of the landing page to be created.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "landing_page_title",
+ "required": false,
+ "description": "The title that appears in the browser's title bar for the landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "title"
+ },
+ {
+ "name": "landing_page_description",
+ "required": false,
+ "description": "Provide a description for the Mailchimp landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "description"
+ },
+ {
+ "name": "store_identifier",
+ "required": false,
+ "description": "The unique identifier of the store linked to this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the store associated with this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "mailchimp_list_id",
+ "required": false,
+ "description": "The ID of the Mailchimp list associated with the landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list's ID associated with this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "landing_page_template_type",
+ "required": false,
+ "description": "Specifies the template type for the landing page. Options are 'signup' or 'product'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup",
+ "product"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of template the landing page has."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "landing_page_template_id",
+ "required": false,
+ "description": "The integer ID representing the template of the Mailchimp landing page.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The template_id of this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "template_id"
+ },
+ {
+ "name": "track_with_mailchimp",
+ "required": false,
+ "description": "Set to true to use cookies for tracking unique visitors and calculating conversion rates.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "tracking.track_with_mailchimp"
+ },
+ {
+ "name": "enable_restricted_data_processing",
+ "required": false,
+ "description": "Enable restricted data processing under CCPA for tracking. True ensures compliance with CCPA.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "tracking.enable_restricted_data_processing"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAllLandingPages'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "use_default_list",
+ "tool_parameter_name": "use_account_default_list",
+ "description": "Will create the Landing Page using the account's Default List instead of requiring a list_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Will create the Landing Page using the account's Default List instead of requiring a list_id."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "landing_page_name",
+ "description": "The name of this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "title",
+ "tool_parameter_name": "landing_page_title",
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "description",
+ "tool_parameter_name": "landing_page_description",
+ "description": "The description of this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The ID of the store associated with this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the store associated with this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailchimp_list_id",
+ "description": "The list's ID associated with this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list's ID associated with this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "landing_page_template_type",
+ "description": "The type of template the landing page has.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup",
+ "product"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of template the landing page has."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "template_id",
+ "tool_parameter_name": "landing_page_template_id",
+ "description": "The template_id of this landing page.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The template_id of this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "tracking.track_with_mailchimp",
+ "tool_parameter_name": "track_with_mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "tracking.enable_restricted_data_processing",
+ "tool_parameter_name": "enable_restricted_data_processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Landing Page\",\n \"description\": \"A summary of an individual page's properties.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Landing Page Name\",\n \"description\": \"The name of this landing page.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Landing Page title\",\n \"description\": \"The title of this landing page seen in the browser's title bar.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Landing Page description\",\n \"description\": \"The description of this landing page.\"\n },\n \"store_id\": {\n \"type\": \"string\",\n \"title\": \"Store ID\",\n \"description\": \"The ID of the store associated with this landing page.\"\n },\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"Landing Page list id\",\n \"description\": \"The list's ID associated with this landing page.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Landing Page Template Type\",\n \"description\": \"The type of template the landing page has.\",\n \"enum\": [\n \"signup\",\n \"product\"\n ],\n \"example\": \"signup\"\n },\n \"template_id\": {\n \"type\": \"integer\",\n \"title\": \"Landing Page template_id\",\n \"description\": \"The template_id of this landing page.\",\n \"example\": 1001\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Tracking Settings\",\n \"description\": \"The tracking settings applied to this landing page.\",\n \"properties\": {\n \"track_with_mailchimp\": {\n \"type\": \"boolean\",\n \"title\": \"Track with Mailchimp\",\n \"description\": \"Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).\"\n },\n \"enable_restricted_data_processing\": {\n \"type\": \"boolean\",\n \"title\": \"Enable restricted data processing\",\n \"description\": \"Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpList.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpList.json
new file mode 100644
index 00000000..291fe799
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpList.json
@@ -0,0 +1,465 @@
+{
+ "name": "CreateMailchimpList",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpList@0.1.0",
+ "description": "Create a new list in your Mailchimp account.\n\n",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_creation_details",
+ "required": true,
+ "description": "JSON object containing details for the new list, such as name, contact info, permission reminder, and campaign defaults.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the list."
+ },
+ "contact": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the list contact."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws."
+ },
+ "permission_reminder": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list."
+ },
+ "notify_on_subscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postLists'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "list_creation_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the list."
+ },
+ "contact": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the list contact."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws."
+ },
+ "permission_reminder": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list."
+ },
+ "notify_on_subscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber List\",\n \"description\": \"Information about a specific list.\",\n \"required\": [\n \"name\",\n \"permission_reminder\",\n \"email_type_option\",\n \"contact\",\n \"campaign_defaults\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"List Name\",\n \"description\": \"The name of the list.\"\n },\n \"contact\": {\n \"type\": \"object\",\n \"title\": \"List Contact\",\n \"description\": \"[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.\",\n \"required\": [\n \"company\",\n \"address1\",\n \"city\",\n \"country\"\n ],\n \"properties\": {\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company Name\",\n \"description\": \"The company name for the list.\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City\",\n \"description\": \"The city for the list contact.\"\n },\n \"state\": {\n \"type\": \"string\",\n \"title\": \"State\",\n \"description\": \"The state for the list contact.\"\n },\n \"zip\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code for the list contact.\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"A two-character ISO3166 country code. Defaults to US if invalid.\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the list contact.\"\n }\n }\n },\n \"permission_reminder\": {\n \"type\": \"string\",\n \"title\": \"Permission Reminder\",\n \"description\": \"The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list.\"\n },\n \"use_archive_bar\": {\n \"type\": \"boolean\",\n \"title\": \"Use Archive Bar\",\n \"description\": \"Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.\",\n \"default\": false\n },\n \"campaign_defaults\": {\n \"type\": \"object\",\n \"title\": \"Campaign Defaults\",\n \"description\": \"[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.\",\n \"required\": [\n \"from_name\",\n \"from_email\",\n \"subject\",\n \"language\"\n ],\n \"properties\": {\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"Sender's Name\",\n \"description\": \"The default from name for campaigns sent to this list.\"\n },\n \"from_email\": {\n \"type\": \"string\",\n \"title\": \"Sender's Email Address\",\n \"description\": \"The default from email for campaigns sent to this list.\"\n },\n \"subject\": {\n \"type\": \"string\",\n \"title\": \"Subject\",\n \"description\": \"The default subject line for campaigns sent to this list.\"\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The default language for this lists's forms.\"\n }\n }\n },\n \"notify_on_subscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Subscribe\",\n \"description\": \"The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"notify_on_unsubscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Unsubscribe\",\n \"description\": \"The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"email_type_option\": {\n \"type\": \"boolean\",\n \"title\": \"Email Type Option\",\n \"description\": \"Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup.\"\n },\n \"double_optin\": {\n \"type\": \"boolean\",\n \"title\": \"Double Opt In\",\n \"description\": \"Whether or not to require the subscriber to confirm subscription via email.\",\n \"default\": false\n },\n \"marketing_permissions\": {\n \"type\": \"boolean\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"Whether or not the list has marketing permissions (eg. GDPR) enabled.\",\n \"default\": false\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpSegment.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpSegment.json
new file mode 100644
index 00000000..8ffb6a6e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpSegment.json
@@ -0,0 +1,245 @@
+{
+ "name": "CreateMailchimpSegment",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpSegment@0.1.0",
+ "description": "Create a new segment in a specific Mailchimp list.\n\nThis tool is used to create a new segment within a specified Mailchimp list. It should be called when you need to categorize or target specific subsets of your mailing list for marketing purposes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list where the new segment will be created.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_name",
+ "required": true,
+ "description": "The name of the segment to be created in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "emails_for_static_segment",
+ "required": false,
+ "description": "An array of emails for creating a static segment. An empty array means no subscribers. Cannot be used with 'options'.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "static_segment"
+ },
+ {
+ "name": "segment_match_type",
+ "required": false,
+ "description": "Specifies the match type for the segment conditions. Use 'any' to match any condition and 'all' to match all conditions.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Match type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "options.match"
+ },
+ {
+ "name": "segment_match_conditions",
+ "required": false,
+ "description": "Array of conditions to define how the segment matches subscribers. Refer to the Mailchimp documentation for various condition types.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "options.conditions"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdSegments'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "segment_name",
+ "description": "The name of the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the segment."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "static_segment",
+ "tool_parameter_name": "emails_for_static_segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "options.match",
+ "tool_parameter_name": "segment_match_type",
+ "description": "Match type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Match type."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "options.conditions",
+ "tool_parameter_name": "segment_match_conditions",
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"Information about a specific list segment.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Segment Name\",\n \"description\": \"The name of the segment.\"\n },\n \"static_segment\": {\n \"type\": \"array\",\n \"title\": \"Static Segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array will create a static segment without any subscribers. This field cannot be provided with the options field.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Conditions\",\n \"description\": \"The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.\",\n \"properties\": {\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match\",\n \"description\": \"Match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpTemplate.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpTemplate.json
new file mode 100644
index 00000000..466f63e2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpTemplate.json
@@ -0,0 +1,173 @@
+{
+ "name": "CreateMailchimpTemplate",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpTemplate@0.1.0",
+ "description": "Create a new Classic template in Mailchimp.\n\nThis tool is used to create a new Classic template in a Mailchimp account. It should be called when a user wants to add a new email template for marketing purposes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_name",
+ "required": true,
+ "description": "The name assigned to the new template. It should be descriptive for easy identification.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the template."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "template_html_content",
+ "required": true,
+ "description": "The raw HTML content for the template, supporting Mailchimp Template Language.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "html"
+ },
+ {
+ "name": "template_folder_id",
+ "required": false,
+ "description": "The ID of the folder where the template will be stored. Ensure the folder exists in the Mailchimp account.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder the template is currently in."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postTemplates'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/templates",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "name",
+ "tool_parameter_name": "template_name",
+ "description": "The name of the template.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the template."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "template_folder_id",
+ "description": "The id of the folder the template is currently in.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder the template is currently in."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "html",
+ "tool_parameter_name": "template_html_content",
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Instance\",\n \"description\": \"Information about a specific template.\",\n \"required\": [\n \"name\",\n \"html\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Template Name\",\n \"description\": \"The name of the template.\",\n \"example\": \"Freddie's Jokes\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder the template is currently in.\",\n \"example\": \"a4b830b\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Template HTML\",\n \"description\": \"The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpWebhook.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpWebhook.json
new file mode 100644
index 00000000..15c6e96f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateMailchimpWebhook.json
@@ -0,0 +1,338 @@
+{
+ "name": "CreateMailchimpWebhook",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateMailchimpWebhook@0.1.0",
+ "description": "Create a new webhook for a specific Mailchimp list.\n\nUse this tool to set up a new webhook for a designated list in Mailchimp, allowing automated event-driven notifications.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "mailchimp_list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list for which the webhook will be created.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "webhook_configuration",
+ "required": true,
+ "description": "A JSON object defining the webhook URL, trigger events, and sources. Includes 'url': string (Webhook URL), 'events': object (e.g., 'subscribe': boolean), 'sources': object (e.g., 'user': boolean).",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "events": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list subscriber is added."
+ },
+ "unsubscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list member unsubscribes."
+ },
+ "profile": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated."
+ },
+ "cleaned": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list."
+ },
+ "upemail": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed."
+ },
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled."
+ }
+ },
+ "inner_properties": null,
+ "description": "The events that can trigger the webhook and whether they are enabled."
+ },
+ "sources": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "user": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by subscriber-initiated actions."
+ },
+ "admin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface."
+ },
+ "api": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by actions initiated via the API."
+ }
+ },
+ "inner_properties": null,
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdWebhooks'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/webhooks",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailchimp_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "webhook_configuration",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "events": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list subscriber is added."
+ },
+ "unsubscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list member unsubscribes."
+ },
+ "profile": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated."
+ },
+ "cleaned": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list."
+ },
+ "upemail": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed."
+ },
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled."
+ }
+ },
+ "inner_properties": null,
+ "description": "The events that can trigger the webhook and whether they are enabled."
+ },
+ "sources": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "user": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by subscriber-initiated actions."
+ },
+ "admin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface."
+ },
+ "api": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by actions initiated via the API."
+ }
+ },
+ "inner_properties": null,
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add Webhook\",\n \"description\": \"Configure a webhook for the given list.\",\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"events\": {\n \"type\": \"object\",\n \"title\": \"Events\",\n \"description\": \"The events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"subscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Subscribed\",\n \"description\": \"Whether the webhook is triggered when a list subscriber is added.\",\n \"example\": true\n },\n \"unsubscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Unsubscribed\",\n \"description\": \"Whether the webhook is triggered when a list member unsubscribes.\",\n \"example\": true\n },\n \"profile\": {\n \"type\": \"boolean\",\n \"title\": \"Profile Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's profile is updated.\",\n \"example\": true\n },\n \"cleaned\": {\n \"type\": \"boolean\",\n \"title\": \"Cleaned\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is cleaned from the list.\",\n \"example\": true\n },\n \"upemail\": {\n \"type\": \"boolean\",\n \"title\": \"Email Address Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is changed.\",\n \"example\": true\n },\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Campaign Sent\",\n \"description\": \"Whether the webhook is triggered when a campaign is sent or cancelled.\",\n \"example\": true\n }\n }\n },\n \"sources\": {\n \"type\": \"object\",\n \"title\": \"Sources\",\n \"description\": \"The possible sources of any events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"user\": {\n \"type\": \"boolean\",\n \"title\": \"User\",\n \"description\": \"Whether the webhook is triggered by subscriber-initiated actions.\",\n \"example\": true\n },\n \"admin\": {\n \"type\": \"boolean\",\n \"title\": \"Admin\",\n \"description\": \"Whether the webhook is triggered by admin-initiated actions in the web interface.\",\n \"example\": true\n },\n \"api\": {\n \"type\": \"boolean\",\n \"title\": \"API\",\n \"description\": \"Whether the webhook is triggered by actions initiated via the API.\",\n \"example\": true\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateNewFileManagerFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateNewFileManagerFolder.json
new file mode 100644
index 00000000..5de6fb3d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateNewFileManagerFolder.json
@@ -0,0 +1,107 @@
+{
+ "name": "CreateNewFileManagerFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateNewFileManagerFolder@0.1.0",
+ "description": "Create a new folder in Mailchimp's File Manager.\n\nUse this tool to create a new folder in Mailchimp's File Manager. This can be helpful for organizing files within your Mailchimp account.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "folder_name",
+ "required": true,
+ "description": "The desired name for the new folder in File Manager.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postFileManagerFolders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/folders",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "name",
+ "tool_parameter_name": "folder_name",
+ "description": "The name of the folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery Folder\",\n \"description\": \"An individual folder listed in the File Manager.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateSurveyCampaignEmail.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateSurveyCampaignEmail.json
new file mode 100644
index 00000000..0ebf458c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateSurveyCampaignEmail.json
@@ -0,0 +1,140 @@
+{
+ "name": "CreateSurveyCampaignEmail",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateSurveyCampaignEmail@0.1.0",
+ "description": "Generate a campaign email linking to a survey.\n\nUse this tool to create an email campaign that includes a link to a given survey, using specified List ID and Survey ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_identifier",
+ "required": true,
+ "description": "The unique identifier for the email list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "survey_identifier",
+ "required": true,
+ "description": "The unique identifier for the survey to link in the campaign email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdSurveysIdActionsCreateEmail'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/surveys/{survey_id}/actions/create-email",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_identifier",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_identifier",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateTemplateFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateTemplateFolder.json
new file mode 100644
index 00000000..1f84007a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CreateTemplateFolder.json
@@ -0,0 +1,107 @@
+{
+ "name": "CreateTemplateFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.CreateTemplateFolder@0.1.0",
+ "description": "Create a new template folder in Mailchimp.\n\nUse this tool to add a new template folder in Mailchimp. This can help organize your templates into specific categories for better management.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "folder_name",
+ "required": true,
+ "description": "The desired name for the new template folder in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postTemplateFolders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/template-folders",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "name",
+ "tool_parameter_name": "folder_name",
+ "description": "The name of the folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Folder\",\n \"description\": \"A folder used to organize templates.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CustomizeListSignupForm.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CustomizeListSignupForm.json
new file mode 100644
index 00000000..23564cd4
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/CustomizeListSignupForm.json
@@ -0,0 +1,544 @@
+{
+ "name": "CustomizeListSignupForm",
+ "fully_qualified_name": "MailchimpTransactionApi.CustomizeListSignupForm@0.1.0",
+ "description": "Customize a list's default signup form in Mailchimp.\n\nUse this tool to modify the default signup form for a specific list in Mailchimp's marketing platform. Ideal for tailoring signup forms to better match branding or collect specific user information.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to customize the signup form.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "signup_form_customization_options",
+ "required": true,
+ "description": "A JSON object containing header settings, body content, and styles for the signup form. It includes header image details, content sections like signup messages, and style properties for elements such as buttons and backgrounds.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "header": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Header image URL."
+ },
+ "text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Header text."
+ },
+ "image_width": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image width, in pixels."
+ },
+ "image_height": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image height, in pixels."
+ },
+ "image_alt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Alt text for the image."
+ },
+ "image_link": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL that the header image will link to."
+ },
+ "image_align": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "none",
+ "left",
+ "center",
+ "right"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image alignment."
+ },
+ "image_border_width": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border width."
+ },
+ "image_border_style": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "none",
+ "solid",
+ "dotted",
+ "dashed",
+ "double",
+ "groove",
+ "outset",
+ "inset",
+ "ridge"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border style."
+ },
+ "image_border_color": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border color."
+ },
+ "image_target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "_blank",
+ "null"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image link target."
+ }
+ },
+ "inner_properties": null,
+ "description": "Options for customizing your signup form header."
+ },
+ "contents": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "section": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup_message",
+ "unsub_message",
+ "signup_thank_you_title"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content section name."
+ },
+ "value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content section text."
+ }
+ },
+ "description": "The signup form body content."
+ },
+ "styles": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "selector": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "page_background",
+ "page_header",
+ "page_outer_wrapper",
+ "body_background",
+ "body_link_style",
+ "forms_buttons",
+ "forms_buttons_hovered",
+ "forms_field_label",
+ "forms_field_text",
+ "forms_required",
+ "forms_required_legend",
+ "forms_help_text",
+ "forms_errors",
+ "monkey_rewards_badge"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies the element selector."
+ },
+ "options": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "property": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies the property."
+ },
+ "value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies value of the property."
+ }
+ },
+ "description": "A collection of options for a selector."
+ }
+ },
+ "description": "An array of objects, each representing an element style for the signup form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdSignupForms'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/signup-forms",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "signup_form_customization_options",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "header": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Header image URL."
+ },
+ "text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Header text."
+ },
+ "image_width": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image width, in pixels."
+ },
+ "image_height": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image height, in pixels."
+ },
+ "image_alt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Alt text for the image."
+ },
+ "image_link": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL that the header image will link to."
+ },
+ "image_align": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "none",
+ "left",
+ "center",
+ "right"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image alignment."
+ },
+ "image_border_width": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border width."
+ },
+ "image_border_style": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "none",
+ "solid",
+ "dotted",
+ "dashed",
+ "double",
+ "groove",
+ "outset",
+ "inset",
+ "ridge"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border style."
+ },
+ "image_border_color": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image border color."
+ },
+ "image_target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "_blank",
+ "null"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Image link target."
+ }
+ },
+ "inner_properties": null,
+ "description": "Options for customizing your signup form header."
+ },
+ "contents": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "section": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup_message",
+ "unsub_message",
+ "signup_thank_you_title"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content section name."
+ },
+ "value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content section text."
+ }
+ },
+ "description": "The signup form body content."
+ },
+ "styles": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "selector": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "page_background",
+ "page_header",
+ "page_outer_wrapper",
+ "body_background",
+ "body_link_style",
+ "forms_buttons",
+ "forms_buttons_hovered",
+ "forms_field_label",
+ "forms_field_text",
+ "forms_required",
+ "forms_required_legend",
+ "forms_help_text",
+ "forms_errors",
+ "monkey_rewards_badge"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies the element selector."
+ },
+ "options": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "property": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies the property."
+ },
+ "value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that identifies value of the property."
+ }
+ },
+ "description": "A collection of options for a selector."
+ }
+ },
+ "description": "An array of objects, each representing an element style for the signup form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Signup Form\",\n \"description\": \"List signup form.\",\n \"properties\": {\n \"header\": {\n \"type\": \"object\",\n \"title\": \"Signup form header options\",\n \"description\": \"Options for customizing your signup form header.\",\n \"properties\": {\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Header Image URL\",\n \"description\": \"Header image URL.\",\n \"example\": \"http://gallery.mailchimp.com/332310cb9a420a9e7fea2858a/images/2491208c-9458-4834-a708-fef4ee736472.png\"\n },\n \"text\": {\n \"type\": \"string\",\n \"title\": \"Header Text\",\n \"description\": \"Header text.\",\n \"example\": \"Header Text goes here\"\n },\n \"image_width\": {\n \"type\": \"string\",\n \"title\": \"Image width\",\n \"description\": \"Image width, in pixels.\",\n \"example\": \"800\"\n },\n \"image_height\": {\n \"type\": \"string\",\n \"title\": \"Image height\",\n \"description\": \"Image height, in pixels.\",\n \"example\": \"200\"\n },\n \"image_alt\": {\n \"type\": \"string\",\n \"title\": \"Image Alt\",\n \"description\": \"Alt text for the image.\",\n \"example\": \"This is an image\"\n },\n \"image_link\": {\n \"type\": \"string\",\n \"title\": \"Image Link\",\n \"description\": \"The URL that the header image will link to.\",\n \"example\": \"gotothisimage.com\"\n },\n \"image_align\": {\n \"type\": \"string\",\n \"title\": \"Image align\",\n \"description\": \"Image alignment.\",\n \"enum\": [\n \"none\",\n \"left\",\n \"center\",\n \"right\"\n ],\n \"example\": \"center\"\n },\n \"image_border_width\": {\n \"type\": \"string\",\n \"title\": \"Image border width\",\n \"description\": \"Image border width.\",\n \"example\": \"2\"\n },\n \"image_border_style\": {\n \"type\": \"string\",\n \"title\": \"Image border style\",\n \"description\": \"Image border style.\",\n \"enum\": [\n \"none\",\n \"solid\",\n \"dotted\",\n \"dashed\",\n \"double\",\n \"groove\",\n \"outset\",\n \"inset\",\n \"ridge\"\n ],\n \"example\": \"solid\"\n },\n \"image_border_color\": {\n \"type\": \"string\",\n \"title\": \"Image border color\",\n \"description\": \"Image border color.\",\n \"example\": \"#896d6d\"\n },\n \"image_target\": {\n \"type\": \"string\",\n \"title\": \"Image target\",\n \"description\": \"Image link target.\",\n \"enum\": [\n \"_blank\",\n \"null\"\n ],\n \"example\": \"_blank\"\n }\n }\n },\n \"contents\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Collection of Content for List Signup Forms\",\n \"description\": \"Collection of Content for List Signup Forms.\",\n \"properties\": {\n \"section\": {\n \"type\": \"string\",\n \"title\": \"Content Section Name\",\n \"description\": \"The content section name.\",\n \"enum\": [\n \"signup_message\",\n \"unsub_message\",\n \"signup_thank_you_title\"\n ],\n \"example\": \"signup_message\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Content Section Value\",\n \"description\": \"The content section text.\",\n \"example\": \"Signup message goes here\"\n }\n }\n },\n \"title\": \"Signup form body content\",\n \"description\": \"The signup form body content.\"\n },\n \"styles\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Collection of Element style for List Signup Forms\",\n \"description\": \"Collection of Element style for List Signup Forms.\",\n \"properties\": {\n \"selector\": {\n \"type\": \"string\",\n \"title\": \"Selector\",\n \"description\": \"A string that identifies the element selector.\",\n \"enum\": [\n \"page_background\",\n \"page_header\",\n \"page_outer_wrapper\",\n \"body_background\",\n \"body_link_style\",\n \"forms_buttons\",\n \"forms_buttons_hovered\",\n \"forms_field_label\",\n \"forms_field_text\",\n \"forms_required\",\n \"forms_required_legend\",\n \"forms_help_text\",\n \"forms_errors\",\n \"monkey_rewards_badge\"\n ],\n \"example\": \"page_background\"\n },\n \"options\": {\n \"type\": \"array\",\n \"title\": \"Options\",\n \"description\": \"A collection of options for a selector.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"An option for Signup Form Styles\",\n \"description\": \"An option for Signup Form Styles.\",\n \"properties\": {\n \"property\": {\n \"type\": \"string\",\n \"title\": \"Property\",\n \"description\": \"A string that identifies the property.\",\n \"example\": \"background-color\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Value\",\n \"description\": \"A string that identifies value of the property.\",\n \"example\": \"#111111\"\n }\n }\n }\n }\n }\n },\n \"title\": \"Signup Form element style\",\n \"description\": \"An array of objects, each representing an element style for the signup form.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCampaignFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCampaignFolder.json
new file mode 100644
index 00000000..1f1e8112
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCampaignFolder.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteCampaignFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteCampaignFolder@0.1.0",
+ "description": "Delete a specific campaign folder in Mailchimp.\n\nDeletes a specified campaign folder in Mailchimp and marks all campaigns in it as 'unfiled'. This tool should be called when you need to remove a campaign folder and manage its contents accordingly.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_folder_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp campaign folder to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteCampaignFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaign-folders/{folder_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "campaign_folder_id",
+ "description": "The unique id for the campaign folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCart.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCart.json
new file mode 100644
index 00000000..2b2849fd
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCart.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteCart",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteCart@0.1.0",
+ "description": "Deletes a specific cart from an ecommerce store.\n\nUse this tool to delete a cart from a specified store in the ecommerce system. It should be called when you need to remove a cart by providing a specific store and cart ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store from which the cart will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_id",
+ "required": true,
+ "description": "The ID for the cart to be deleted from the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdCartsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_id",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCartLineItem.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCartLineItem.json
new file mode 100644
index 00000000..2654656f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteCartLineItem.json
@@ -0,0 +1,173 @@
+{
+ "name": "DeleteCartLineItem",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteCartLineItem@0.1.0",
+ "description": "Delete a specific cart line item.\n\nUse this tool to delete a particular line item from a cart in an eCommerce store. Call this tool when you need to remove an item from a customer's shopping cart.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store from which the cart line item will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "required": true,
+ "description": "The unique identifier for the cart in the eCommerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ },
+ {
+ "name": "line_item_id",
+ "required": true,
+ "description": "ID for the line item in the cart to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "line_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdCartsLinesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_identifier",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "line_id",
+ "tool_parameter_name": "line_item_id",
+ "description": "The id for the line item of a cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEcommerceProduct.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEcommerceProduct.json
new file mode 100644
index 00000000..b17ff631
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEcommerceProduct.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteEcommerceProduct",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteEcommerceProduct@0.1.0",
+ "description": "Delete a product from an eCommerce store.\n\nUse this tool to delete a specific product from a given eCommerce store in Mailchimp. It should be called when you want to remove a product based on its store and product ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier of the eCommerce store from which the product will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The unique identifier for the product to delete from a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdProductsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEcommerceStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEcommerceStore.json
new file mode 100644
index 00000000..2c4cb4de
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEcommerceStore.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteEcommerceStore",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteEcommerceStore@0.1.0",
+ "description": "Delete a store and its associated subresources.\n\nUse this tool to delete an ecommerce store from Mailchimp Marketing. This action will remove the store along with any related Customers, Orders, Products, and Carts. Invoke this when a store needs to be completely removed from the system.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEmailTemplate.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEmailTemplate.json
new file mode 100644
index 00000000..9a00b5eb
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteEmailTemplate.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteEmailTemplate",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteEmailTemplate@0.1.0",
+ "description": "Delete a specific email template in Mailchimp.\n\n",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_unique_id",
+ "required": true,
+ "description": "The unique identifier for the email template to be deleted in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "template_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteTemplatesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/templates/{template_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "template_id",
+ "tool_parameter_name": "template_unique_id",
+ "description": "The unique id for the template.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteFileManagerFile.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteFileManagerFile.json
new file mode 100644
index 00000000..347b07fe
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteFileManagerFile.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteFileManagerFile",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteFileManagerFile@0.1.0",
+ "description": "Remove a specific file from Mailchimp's File Manager.\n\nUse this tool to delete a specific file by its ID from Mailchimp's File Manager. It helps manage and organize files by removing unwanted or outdated ones.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_manager_file_id",
+ "required": true,
+ "description": "The unique identifier for the file to be deleted from Mailchimp's File Manager.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "file_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteFileManagerFilesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/files/{file_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "file_id",
+ "tool_parameter_name": "file_manager_file_id",
+ "description": "The unique id for the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteFileManagerFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteFileManagerFolder.json
new file mode 100644
index 00000000..f1fb29b0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteFileManagerFolder.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteFileManagerFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteFileManagerFolder@0.1.0",
+ "description": "Delete a specific folder in the File Manager.\n\nUse this tool to delete a folder from Mailchimp's File Manager by specifying the folder ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_manager_folder_id",
+ "required": true,
+ "description": "The unique identifier for the folder to be deleted in the File Manager.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteFileManagerFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/folders/{folder_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "file_manager_folder_id",
+ "description": "The unique id for the File Manager folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteInterestCategory.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteInterestCategory.json
new file mode 100644
index 00000000..a4935b22
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteInterestCategory.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteInterestCategory",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteInterestCategory@0.1.0",
+ "description": "Delete a specific interest category from a list.\n\nUse this tool to delete a particular interest category from a specified list in Mailchimp. This might be called when managing email list segments and you need to remove an unwanted audience category.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list from which you want to delete an interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "required": true,
+ "description": "The unique ID of the interest category to be deleted from a list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdInterestCategoriesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteInterestFromCategory.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteInterestFromCategory.json
new file mode 100644
index 00000000..ceabc908
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteInterestFromCategory.json
@@ -0,0 +1,173 @@
+{
+ "name": "DeleteInterestFromCategory",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteInterestFromCategory@0.1.0",
+ "description": "Delete an interest from a specific category.\n\nUse this tool to delete interests or group names within a specified category in Mailchimp. This is useful for managing interests in a mailing list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the list to be targeted for deleting an interest.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "required": true,
+ "description": "The unique ID for the interest category to delete the interest from. This ID is essential to specify the correct category in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "interest_identifier",
+ "required": true,
+ "description": "The unique identifier for the specific interest or group name to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdInterestCategoriesIdInterestsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_id",
+ "tool_parameter_name": "interest_identifier",
+ "description": "The specific interest or 'group name'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteLandingPage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteLandingPage.json
new file mode 100644
index 00000000..8f3b5b40
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteLandingPage.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteLandingPage",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteLandingPage@0.1.0",
+ "description": "Delete a specified landing page.\n\nUse this tool to delete a landing page by providing its ID. Ideal for managing or updating landing pages by removing outdated or unnecessary ones.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "landing_page_id",
+ "required": true,
+ "description": "The unique ID for the landing page to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "page_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteLandingPageId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages/{page_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "page_id",
+ "tool_parameter_name": "landing_page_id",
+ "description": "The unique id for the page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpCampaign.json
new file mode 100644
index 00000000..70fb6d8a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpCampaign.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteMailchimpCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteMailchimpCampaign@0.1.0",
+ "description": "Delete a specific Mailchimp campaign.\n\nUse this tool to remove a campaign from your Mailchimp account by specifying the campaign ID. Ideal for managing or cleaning up your Mailchimp campaigns when they are no longer needed.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp campaign to delete.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteCampaignsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpList.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpList.json
new file mode 100644
index 00000000..1d9d70e0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpList.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteMailchimpList",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteMailchimpList@0.1.0",
+ "description": "Delete a list from your Mailchimp account.\n\nUse this tool to permanently delete a list from your Mailchimp account. Deleting a list removes its history, including subscriber activity and email addresses, unless previously exported and backed up.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpWebhook.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpWebhook.json
new file mode 100644
index 00000000..a374f5f1
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMailchimpWebhook.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteMailchimpWebhook",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteMailchimpWebhook@0.1.0",
+ "description": "Delete a specific webhook from a Mailchimp list.\n\nUse this tool to remove a webhook from a specified Mailchimp list by providing the list and webhook IDs.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list from which the webhook will be deleted. This ID identifies the list containing the target webhook.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "webhook_id",
+ "required": true,
+ "description": "The unique identifier for the webhook to be deleted from the specified Mailchimp list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "webhook_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdWebhooksId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/webhooks/{webhook_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "webhook_id",
+ "tool_parameter_name": "webhook_id",
+ "description": "The webhook's id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMemberDataPermanently.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMemberDataPermanently.json
new file mode 100644
index 00000000..315d5ce9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMemberDataPermanently.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteMemberDataPermanently",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteMemberDataPermanently@0.1.0",
+ "description": "Permanently delete a list member's data in Mailchimp.\n\nThis tool deletes all personally identifiable information related to a specific list member and removes them from the list, ensuring they cannot be re-imported.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID of the list from which the member will be deleted. This ID identifies the target list in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_email_hash",
+ "required": true,
+ "description": "MD5 hash of the lowercase version of the member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdMembersHashActionsDeletePermanent'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/actions/delete-permanent",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_email_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMemberNote.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMemberNote.json
new file mode 100644
index 00000000..ded64965
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMemberNote.json
@@ -0,0 +1,173 @@
+{
+ "name": "DeleteMemberNote",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteMemberNote@0.1.0",
+ "description": "Delete a specific note for a list member.\n\nUse this tool to delete a specific note associated with a list member in Mailchimp. It should be called when there is a need to remove a note from a contact's record in a specific list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the list in which the member's note is to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the member's email (in lowercase), the email itself, or contact_id for identifying list members.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "note_id",
+ "required": true,
+ "description": "The ID for the specific note you want to delete for a list member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "note_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdMembersIdNotesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "note_id",
+ "tool_parameter_name": "note_id",
+ "description": "The id for the note.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMergeField.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMergeField.json
new file mode 100644
index 00000000..03e18be9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteMergeField.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteMergeField",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteMergeField@0.1.0",
+ "description": "Delete a specific merge field from a Mailchimp list.\n\nUse this tool to remove a specific merge field from a Mailchimp list. This action is irreversible and will delete the specified merge field associated with the given list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list from which to delete the merge field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "merge_field_id",
+ "required": true,
+ "description": "The ID for the merge field to delete from the Mailchimp list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "merge_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdMergeFieldsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/merge-fields/{merge_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "merge_id",
+ "tool_parameter_name": "merge_field_id",
+ "description": "The id for the merge field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteOrderInEcommerceStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteOrderInEcommerceStore.json
new file mode 100644
index 00000000..f70790a2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteOrderInEcommerceStore.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteOrderInEcommerceStore",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteOrderInEcommerceStore@0.1.0",
+ "description": "Delete an order from an eCommerce store.\n\nUse this tool to delete a specific order from an eCommerce store in Mailchimp by providing the store ID and order ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "ecommerce_store_id",
+ "required": true,
+ "description": "The unique identifier for the eCommerce store from which the order will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order to delete within the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdOrdersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "ecommerce_store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteOrderLineItem.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteOrderLineItem.json
new file mode 100644
index 00000000..de2ddc90
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteOrderLineItem.json
@@ -0,0 +1,173 @@
+{
+ "name": "DeleteOrderLineItem",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteOrderLineItem@0.1.0",
+ "description": "Delete a specific order line item.\n\nCall this tool to delete a specific line item from an order within an e-commerce store in Mailchimp. The tool should be used when a user needs to remove an item from an order completely.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "Unique identifier for the store from which the order line item will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order within a store. This is required to delete a line item from the specified order.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "order_line_item_id",
+ "required": true,
+ "description": "The unique identifier for the line item of an order to be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "line_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdOrdersIdLinesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "line_id",
+ "tool_parameter_name": "order_line_item_id",
+ "description": "The id for the line item of an order.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteProductImage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteProductImage.json
new file mode 100644
index 00000000..c049f476
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteProductImage.json
@@ -0,0 +1,173 @@
+{
+ "name": "DeleteProductImage",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteProductImage@0.1.0",
+ "description": "Delete an image from a product in an e-commerce store.\n\nThis tool deletes a specified image from a product within an e-commerce store, identified by store, product, and image IDs. It should be called when a product image needs to be removed from a store's inventory.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the e-commerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The unique ID for the product in the store from which the image will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "required": true,
+ "description": "The unique identifier for the product image to be deleted from the store's inventory.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "image_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdProductsIdImagesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "image_id",
+ "tool_parameter_name": "product_image_id",
+ "description": "The id for the product image.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteProductVariant.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteProductVariant.json
new file mode 100644
index 00000000..875d3072
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteProductVariant.json
@@ -0,0 +1,173 @@
+{
+ "name": "DeleteProductVariant",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteProductVariant@0.1.0",
+ "description": "Delete a product variant from an ecommerce store.\n\nUse this tool to delete a specific product variant in an ecommerce store on Mailchimp. Ideal for managing product inventories by removing obsolete or discontinued variants.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store from which the product variant will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The unique identifier for the product within a store to which the variant belongs.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "required": true,
+ "description": "The identifier for the product variant to be deleted from the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "variant_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdProductsIdVariantsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "variant_id",
+ "tool_parameter_name": "product_variant_id",
+ "description": "The id for the product variant.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeletePromoRuleFromStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeletePromoRuleFromStore.json
new file mode 100644
index 00000000..1fdcd0e8
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeletePromoRuleFromStore.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeletePromoRuleFromStore",
+ "fully_qualified_name": "MailchimpTransactionApi.DeletePromoRuleFromStore@0.1.0",
+ "description": "Delete a promo rule from a specified ecommerce store.\n\nUse this tool to remove a promotional rule from an ecommerce store on Mailchimp. This action is irreversible and will delete the specified promo rule from the store identified by the store ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store from which the promo rule will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "required": true,
+ "description": "The unique identifier for the promo rule to be deleted from the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdPromorulesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_id",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteSpecificSegment.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteSpecificSegment.json
new file mode 100644
index 00000000..f1a08a28
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteSpecificSegment.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteSpecificSegment",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteSpecificSegment@0.1.0",
+ "description": "Delete a specific segment from a Mailchimp list.\n\nUse this tool to delete a specific segment within a Mailchimp list by providing the list and segment IDs. This is useful for managing and organizing your email marketing lists.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to target for segment deletion.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "required": true,
+ "description": "The unique identifier for the segment to be deleted. It must match the segment ID in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "segment_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdSegmentsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments/{segment_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "segment_id",
+ "tool_parameter_name": "segment_unique_id",
+ "description": "The unique id for the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteStoreCustomer.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteStoreCustomer.json
new file mode 100644
index 00000000..744dab31
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteStoreCustomer.json
@@ -0,0 +1,140 @@
+{
+ "name": "DeleteStoreCustomer",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteStoreCustomer@0.1.0",
+ "description": "Delete a customer from an ecommerce store.\n\nCall this tool to remove a specific customer from a given ecommerce store. Use when you need to manage customer records by deleting them from a store's database.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store from which the customer will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "customer_identifier",
+ "required": true,
+ "description": "The unique identifier for the customer to be deleted from the store. This ID is used to specify which customer's records should be removed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "customer_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdCustomersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "customer_id",
+ "tool_parameter_name": "customer_identifier",
+ "description": "The id for the customer of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteStorePromoCode.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteStorePromoCode.json
new file mode 100644
index 00000000..3c12b00d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteStorePromoCode.json
@@ -0,0 +1,173 @@
+{
+ "name": "DeleteStorePromoCode",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteStorePromoCode@0.1.0",
+ "description": "Delete a promo code from an e-commerce store.\n\nUse this tool to delete a specific promo code from a designated e-commerce store in Mailchimp Marketing. It is useful when you want to manage or clean up promotional offers by removing existing promo codes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store from which the promo code will be deleted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "required": true,
+ "description": "The unique identifier for the promo rule of a store, used to specify which promo rule the code belongs to.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_id",
+ "required": true,
+ "description": "The ID of the promo code to be deleted from the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_code_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteEcommerceStoresIdPromocodesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_id",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_code_id",
+ "tool_parameter_name": "promo_code_id",
+ "description": "The id for the promo code of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteTemplateFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteTemplateFolder.json
new file mode 100644
index 00000000..b4934ccd
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteTemplateFolder.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteTemplateFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteTemplateFolder@0.1.0",
+ "description": "Delete a specific template folder in Mailchimp.\n\nUse this tool to delete a specific template folder in Mailchimp and mark all its templates as 'unfiled'. Call this tool when you need to reorganize or clean up template folders.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_folder_id",
+ "required": true,
+ "description": "The unique ID for the template folder to be deleted. Use this to specify which folder should be removed and have its templates marked as 'unfiled'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteTemplateFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/template-folders/{folder_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "template_folder_id",
+ "description": "The unique id for the template folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteVerifiedDomain.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteVerifiedDomain.json
new file mode 100644
index 00000000..4dd58553
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/DeleteVerifiedDomain.json
@@ -0,0 +1,107 @@
+{
+ "name": "DeleteVerifiedDomain",
+ "fully_qualified_name": "MailchimpTransactionApi.DeleteVerifiedDomain@0.1.0",
+ "description": "Deletes a verified domain from your Mailchimp account.\n\nUse this tool to remove a domain that has been previously verified in your Mailchimp account. Ideal for situations where a domain is no longer needed or has ownership changes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "domain_name",
+ "required": true,
+ "description": "The domain name to be deleted from your Mailchimp account.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "domain_name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteVerifiedDomain'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/verified-domains/{domain_name}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "domain_name",
+ "tool_parameter_name": "domain_name",
+ "description": "The domain name.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchAbuseReportDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchAbuseReportDetails.json
new file mode 100644
index 00000000..096f57dc
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchAbuseReportDetails.json
@@ -0,0 +1,272 @@
+{
+ "name": "FetchAbuseReportDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.FetchAbuseReportDetails@0.1.0",
+ "description": "Fetch details about a specific abuse report for a mailing list.\n\nThis tool retrieves detailed information about an abuse report identified by a specific report ID associated with a mailing list via Mailchimp's marketing API. It should be called when specific details about an abuse report are needed.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "mailing_list_unique_id",
+ "required": true,
+ "description": "The unique ID for the mailing list associated with the abuse report.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "abuse_report_id",
+ "required": true,
+ "description": "The unique identifier for the specific abuse report to fetch details for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the abuse report."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "report_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, between 1 and 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdAbuseReportsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/abuse-reports/{report_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailing_list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "report_id",
+ "tool_parameter_name": "abuse_report_id",
+ "description": "The id for the abuse report.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the abuse report."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchCampaignOpenLocations.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchCampaignOpenLocations.json
new file mode 100644
index 00000000..21f22db0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchCampaignOpenLocations.json
@@ -0,0 +1,239 @@
+{
+ "name": "FetchCampaignOpenLocations",
+ "fully_qualified_name": "MailchimpTransactionApi.FetchCampaignOpenLocations@0.1.0",
+ "description": "Retrieve top open locations for a specific campaign.\n\nUse this tool to obtain the top geographical locations where a marketing campaign was opened. This can help in analyzing the reach and engagement of the campaign in different regions.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the specific marketing campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "required": false,
+ "description": "Specify the number of location records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "records_to_skip",
+ "required": false,
+ "description": "Number of records to skip for pagination purposes. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdLocations'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/locations",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "records_to_skip",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchClickDetailsForCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchClickDetailsForCampaign.json
new file mode 100644
index 00000000..1d056b7e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/FetchClickDetailsForCampaign.json
@@ -0,0 +1,272 @@
+{
+ "name": "FetchClickDetailsForCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.FetchClickDetailsForCampaign@0.1.0",
+ "description": "Retrieve details on members who clicked a specific campaign link.\n\nThis tool retrieves information about list members who clicked on a specific link in an email marketing campaign. It should be called when you need insights into which members interacted with a particular link within a campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "A unique identifier for the email marketing campaign to retrieve click details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "link_identifier",
+ "required": true,
+ "description": "The unique identifier for the specific link in the campaign. This ID is used to retrieve details of list members who clicked the link.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "link_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for nested fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "required": false,
+ "description": "The number of member records to return. Default is 10 and the maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdClickDetailsIdMembers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/click-details/{link_id}/members",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "record_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "link_id",
+ "tool_parameter_name": "link_identifier",
+ "description": "The id for the link.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ForgetContact.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ForgetContact.json
new file mode 100644
index 00000000..1bbdd3b1
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ForgetContact.json
@@ -0,0 +1,140 @@
+{
+ "name": "ForgetContact",
+ "fully_qualified_name": "MailchimpTransactionApi.ForgetContact@0.1.0",
+ "description": "Forget a contact in the audience list.\n\nUse this tool to erase a contact's data from a specified audience in Mailchimp, ensuring the contact is forgotten.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_id",
+ "required": true,
+ "description": "The unique ID for the audience where the contact should be forgotten.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "audience_id"
+ },
+ {
+ "name": "contact_id",
+ "required": true,
+ "description": "The unique ID of the contact to be forgotten from the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "contact_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAudiencesContactsActionsForget'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences/{audience_id}/contacts/{contact_id}/actions/forget",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "audience_id",
+ "tool_parameter_name": "audience_id",
+ "description": "The unique ID for the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "contact_id",
+ "tool_parameter_name": "contact_id",
+ "description": "The unique id for the contact.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAbuseReportsForList.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAbuseReportsForList.json
new file mode 100644
index 00000000..66277462
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAbuseReportsForList.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetAbuseReportsForList",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAbuseReportsForList@0.1.0",
+ "description": "Retrieve all abuse reports for a specified mailing list.\n\nCall this tool to get detailed information about abuse reports associated with a particular mailing list. This can be useful for monitoring and handling abuse feedback effectively.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the mailing list to retrieve abuse reports for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_result",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of records to return. Default is 10. Maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdAbuseReports'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/abuse-reports",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_result",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAccountExportInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAccountExportInfo.json
new file mode 100644
index 00000000..824c78ef
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAccountExportInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetAccountExportInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAccountExportInfo@0.1.0",
+ "description": "Get information about a specific account export.\n\nUse this tool to retrieve details about a particular account export using the export ID. Ideal for checking the status or details of exports in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "account_export_id",
+ "required": true,
+ "description": "The unique ID for the account export. Required to retrieve specific export details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the account export."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "export_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAccountExportId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/account-exports/{export_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "export_id",
+ "tool_parameter_name": "account_export_id",
+ "description": "The unique id for the account export.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the account export."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAccountOrders.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAccountOrders.json
new file mode 100644
index 00000000..75779115
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAccountOrders.json
@@ -0,0 +1,338 @@
+{
+ "name": "GetAccountOrders",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAccountOrders@0.1.0",
+ "description": "Retrieve information about an account's ecommerce orders.\n\nGet details on all orders associated with a specific account, including order history and status.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_order_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of order records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "restrict_to_campaign_id",
+ "required": false,
+ "description": "Restrict results to orders with a specific campaign ID value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `campaign_id` value."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "filter_by_outreach_id",
+ "required": false,
+ "description": "Return orders associated with the specified outreach_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `outreach_id` value."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "outreach_id"
+ },
+ {
+ "name": "specific_customer_id",
+ "required": false,
+ "description": "Restrict results to orders made by a specific customer using their unique customer ID.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders made by a specific customer."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "customer_id"
+ },
+ {
+ "name": "restrict_to_outreach_orders",
+ "required": false,
+ "description": "Restrict results to orders that have an outreach attached, such as an email campaign or Facebook ad.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "has_outreach"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceOrders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/orders",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_order_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "restrict_to_campaign_id",
+ "description": "Restrict results to orders with a specific `campaign_id` value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `campaign_id` value."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "outreach_id",
+ "tool_parameter_name": "filter_by_outreach_id",
+ "description": "Restrict results to orders with a specific `outreach_id` value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `outreach_id` value."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "customer_id",
+ "tool_parameter_name": "specific_customer_id",
+ "description": "Restrict results to orders made by a specific customer.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders made by a specific customer."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "has_outreach",
+ "tool_parameter_name": "restrict_to_outreach_orders",
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllBatchWebhooks.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllBatchWebhooks.json
new file mode 100644
index 00000000..1f066770
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllBatchWebhooks.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetAllBatchWebhooks",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAllBatchWebhooks@0.1.0",
+ "description": "Retrieve all configured webhooks for batches.\n\nCall this tool to get a list of webhooks that have been set up for handling batch processing events in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object references.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "Specify the number of webhook records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getBatchWebhooks'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batch-webhooks",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllLandingPages.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllLandingPages.json
new file mode 100644
index 00000000..d670b012
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllLandingPages.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetAllLandingPages",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAllLandingPages@0.1.0",
+ "description": "Retrieve all landing pages from Mailchimp.\n\nUse this tool to obtain a comprehensive list of all landing pages available in your Mailchimp account. Useful for marketing analysis and content management.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "sort_direction",
+ "required": false,
+ "description": "Specifies the order direction for sorting the results (e.g., ascending or descending).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ },
+ {
+ "name": "sort_by_field",
+ "required": false,
+ "description": "Specify the field by which the landing pages should be sorted.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response, using dot notation for nested fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "required": false,
+ "description": "Specify the number of landing page records to return. Defaults to 10; maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAllLandingPages'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "record_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllMarketingCampaigns.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllMarketingCampaigns.json
new file mode 100644
index 00000000..6ee433a3
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAllMarketingCampaigns.json
@@ -0,0 +1,602 @@
+{
+ "name": "GetAllMarketingCampaigns",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAllMarketingCampaigns@0.1.0",
+ "description": "Fetches all marketing campaigns from an account.\n\nUse this tool to retrieve a list of all marketing campaigns associated with a Mailchimp account.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Number of records to return, between 10 and 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "campaign_type",
+ "required": false,
+ "description": "Specify the type of campaign to retrieve (e.g., regular, plaintext, absplit).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "campaign_status",
+ "required": false,
+ "description": "Filter campaigns by their status (e.g., sent, draft).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "status"
+ },
+ {
+ "name": "sent_before_time",
+ "required": false,
+ "description": "Restricts the response to campaigns sent before the specified time. It should be in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_send_time"
+ },
+ {
+ "name": "restrict_to_campaigns_sent_after",
+ "required": false,
+ "description": "Restrict the response to campaigns sent after the specified ISO 8601 time.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_send_time"
+ },
+ {
+ "name": "created_before_date_time",
+ "required": false,
+ "description": "Restrict response to campaigns created before this time using ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_create_time"
+ },
+ {
+ "name": "campaigns_created_after",
+ "required": false,
+ "description": "Specify the date and time to restrict results to campaigns created after this point. Must be in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_create_time"
+ },
+ {
+ "name": "list_unique_id",
+ "required": false,
+ "description": "The unique identifier for the list associated with the campaigns to be retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "unique_folder_id",
+ "required": false,
+ "description": "Unique identifier for the folder containing the campaigns.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique folder id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "list_member_identifier",
+ "required": false,
+ "description": "The MD5 hash of the lowercase version of the list member\u2019s email. Used to retrieve campaigns sent to this member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Retrieve campaigns sent to a particular list member. Member ID is The MD5 hash of the lowercase version of the list member\u2019s email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "member_id"
+ },
+ {
+ "name": "sort_by_field",
+ "required": false,
+ "description": "Specify the field to sort the campaigns by. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Specify the sorting order for the results. Use 'ASC' for ascending or 'DESC' for descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "required": false,
+ "description": "Include this field in the response to determine if campaigns are eligible for Resend Shortcuts.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_resend_shortcut_eligibility"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaigns'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "campaign_type",
+ "description": "The campaign type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign type."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "status",
+ "tool_parameter_name": "campaign_status",
+ "description": "The status of the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of the campaign."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_send_time",
+ "tool_parameter_name": "sent_before_time",
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_send_time",
+ "tool_parameter_name": "restrict_to_campaigns_sent_after",
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_create_time",
+ "tool_parameter_name": "created_before_date_time",
+ "description": "Restrict the response to campaigns created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_create_time",
+ "tool_parameter_name": "campaigns_created_after",
+ "description": "Restrict the response to campaigns created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique id for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the list."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "unique_folder_id",
+ "description": "The unique folder id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique folder id."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "member_id",
+ "tool_parameter_name": "list_member_identifier",
+ "description": "Retrieve campaigns sent to a particular list member. Member ID is The MD5 hash of the lowercase version of the list member\u2019s email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Retrieve campaigns sent to a particular list member. Member ID is The MD5 hash of the lowercase version of the list member\u2019s email address."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "tool_parameter_name": "include_resend_shortcut_eligibility",
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceContacts.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceContacts.json
new file mode 100644
index 00000000..79018701
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceContacts.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetAudienceContacts",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAudienceContacts@0.1.0",
+ "description": "Retrieve all audience information from the account.\n\nUse this tool to get detailed information about every audience in the Mailchimp account, assisting in data management and marketing analysis.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "The number of audience records to return, ranging from 1 to 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAudienceContacts'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceInfo.json
new file mode 100644
index 00000000..ee7baca2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetAudienceInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAudienceInfo@0.1.0",
+ "description": "Retrieve information about a specific audience.\n\nUse this tool to get details about a specific audience in Mailchimp Marketing using the audience ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_id",
+ "required": true,
+ "description": "The unique ID of the audience to retrieve information for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "audience_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A list of fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAudienceId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences/{audience_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "audience_id",
+ "tool_parameter_name": "audience_id",
+ "description": "The unique ID for the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceMergeFields.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceMergeFields.json
new file mode 100644
index 00000000..9652b768
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAudienceMergeFields.json
@@ -0,0 +1,305 @@
+{
+ "name": "GetAudienceMergeFields",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAudienceMergeFields@0.1.0",
+ "description": "Get a list of all merge fields for an audience.\n\nUse this tool to retrieve all the merge fields associated with a specific audience in Mailchimp. This is useful for understanding the structure and data fields available within an audience.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_list_id",
+ "required": true,
+ "description": "The unique ID for the audience list in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, between 1 and 1000 (default is 10).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "merge_field_type",
+ "required": false,
+ "description": "Specify the type of merge field to retrieve, such as 'text', 'number', etc.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge field type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "is_required_merge_field",
+ "required": false,
+ "description": "Indicates if the merge field is required. Pass 'true' or 'false'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether it's a required merge field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "required"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMergeFields'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/merge-fields",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "merge_field_type",
+ "description": "The merge field type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge field type."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "required",
+ "tool_parameter_name": "is_required_merge_field",
+ "description": "Whether it's a required merge field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether it's a required merge field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "audience_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAuthorizedAppInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAuthorizedAppInfo.json
new file mode 100644
index 00000000..17f19476
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAuthorizedAppInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetAuthorizedAppInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAuthorizedAppInfo@0.1.0",
+ "description": "Retrieve details of a specific authorized application.\n\nThis tool retrieves information about a specific authorized application using the app ID. It is useful for checking the details or status of an application authorized within Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "authorized_application_id",
+ "required": true,
+ "description": "The unique ID for the connected authorized application to retrieve its information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the connected authorized application."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "app_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object references.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAuthorizedAppsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/authorized-apps/{app_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "app_id",
+ "tool_parameter_name": "authorized_application_id",
+ "description": "The unique id for the connected authorized application.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the connected authorized application."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailInfo.json
new file mode 100644
index 00000000..ccc4727a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailInfo.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetAutomationEmailInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAutomationEmailInfo@0.1.0",
+ "description": "Retrieve details of a specific classic automation email.\n\nUse this tool to get detailed information about a specific email within a classic automation workflow in Mailchimp Marketing.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique ID for the automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "automation_email_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Automation workflow email in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomationsIdEmailsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "automation_email_unique_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailQueueInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailQueueInfo.json
new file mode 100644
index 00000000..6eb33e1a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailQueueInfo.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetAutomationEmailQueueInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAutomationEmailQueueInfo@0.1.0",
+ "description": "Retrieve details of a classic automation email queue in Mailchimp.\n\nThis tool retrieves information about a classic automation email queue in Mailchimp. It should be called when you need details about queued emails for a specific automation workflow and email.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique ID for the Automation workflow to obtain the email queue details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "required": true,
+ "description": "The unique ID for the automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomationsIdEmailsIdQueue'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}/queue",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "automation_workflow_email_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailsSummary.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailsSummary.json
new file mode 100644
index 00000000..60d11afa
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationEmailsSummary.json
@@ -0,0 +1,107 @@
+{
+ "name": "GetAutomationEmailsSummary",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAutomationEmailsSummary@0.1.0",
+ "description": "Get a summary of emails in an automation workflow.\n\nUse this tool to retrieve a summary of all emails within a specified classic automation workflow. Call this tool when you need detailed insights into the automation process.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique ID of the automation workflow to retrieve the email summary for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomationsIdEmails'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationSubscriberInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationSubscriberInfo.json
new file mode 100644
index 00000000..a280dcb7
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationSubscriberInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetAutomationSubscriberInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAutomationSubscriberInfo@0.1.0",
+ "description": "Get details of a subscriber in an automation email queue.\n\nThis tool retrieves information about a specific subscriber within the queue of a classic automation email in Mailchimp. Use this when you need to access details about how a subscriber is queued in a specific workflow email.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique ID for the Automation workflow in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "required": true,
+ "description": "The unique ID for the Automation workflow email in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ },
+ {
+ "name": "subscriber_email_md5_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the subscriber's email address in the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomationsIdEmailsIdQueueId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}/queue/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "automation_workflow_email_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_email_md5_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationSummary.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationSummary.json
new file mode 100644
index 00000000..d8bd6e11
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAutomationSummary.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetAutomationSummary",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAutomationSummary@0.1.0",
+ "description": "Retrieve details of a specific classic automation workflow.\n\nThis tool fetches a summary of an individual classic automation workflow's settings and content, including trigger settings for the first email.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "required": true,
+ "description": "The unique ID for the automation workflow to retrieve its summary.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the automation workflow details. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomationsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAvailableTemplates.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAvailableTemplates.json
new file mode 100644
index 00000000..d88311e4
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetAvailableTemplates.json
@@ -0,0 +1,503 @@
+{
+ "name": "GetAvailableTemplates",
+ "fully_qualified_name": "MailchimpTransactionApi.GetAvailableTemplates@0.1.0",
+ "description": "Retrieve a list of available email templates.\n\nFetches and returns a list of all the email templates available in a Mailchimp account. Useful for managing and selecting templates for campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of template records to return (1-1000). Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0. Use for paginated responses.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "template_creator_user",
+ "required": false,
+ "description": "Specify the Mailchimp account user who created the template to filter results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the template."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_by"
+ },
+ {
+ "name": "created_after_date",
+ "required": false,
+ "description": "Retrieve templates created after a specific date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to templates created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_date_created"
+ },
+ {
+ "name": "restrict_before_date_created",
+ "required": false,
+ "description": "Restrict the response to templates created before the specified date in ISO 8601 format. For example: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to templates created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_date_created"
+ },
+ {
+ "name": "template_type",
+ "required": false,
+ "description": "Specify the template type to limit the results. This filters the email templates based on their type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on template type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "filter_by_category",
+ "required": false,
+ "description": "Limit the results to templates that match a specific category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "category"
+ },
+ {
+ "name": "template_folder_id",
+ "required": false,
+ "description": "The unique ID for the folder containing templates to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique folder id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "sort_templates_by_field",
+ "required": false,
+ "description": "Specify the field to sort templates by. Determines the sorting order of returned templates.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns user templates sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "template_content_type",
+ "required": false,
+ "description": "Filter templates based on content structure. Use 'template' for legacy, 'multichannel' for new editor, or 'html' for code your own.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on how the template's content is put together. Only templates of type `user` can be filtered by `content_type`. If you want to retrieve saved templates created with the legacy email editor, then filter `content_type` to `template`. If you'd rather pull your saved templates for the new editor, filter to `multichannel`. For code your own templates, filter to `html`."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "content_type"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Specify the order direction for sorted results ('asc' for ascending, 'desc' for descending).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getTemplates'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/templates",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_by",
+ "tool_parameter_name": "template_creator_user",
+ "description": "The Mailchimp account user who created the template.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the template."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_date_created",
+ "tool_parameter_name": "created_after_date",
+ "description": "Restrict the response to templates created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to templates created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_date_created",
+ "tool_parameter_name": "restrict_before_date_created",
+ "description": "Restrict the response to templates created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to templates created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "template_type",
+ "description": "Limit results based on template type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on template type."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "category",
+ "tool_parameter_name": "filter_by_category",
+ "description": "Limit results based on category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on category."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "template_folder_id",
+ "description": "The unique folder id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique folder id."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_templates_by_field",
+ "description": "Returns user templates sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns user templates sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "content_type",
+ "tool_parameter_name": "template_content_type",
+ "description": "Limit results based on how the template's content is put together. Only templates of type `user` can be filtered by `content_type`. If you want to retrieve saved templates created with the legacy email editor, then filter `content_type` to `template`. If you'd rather pull your saved templates for the new editor, filter to `multichannel`. For code your own templates, filter to `html`.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on how the template's content is put together. Only templates of type `user` can be filtered by `content_type`. If you want to retrieve saved templates created with the legacy email editor, then filter `content_type` to `template`. If you'd rather pull your saved templates for the new editor, filter to `multichannel`. For code your own templates, filter to `html`."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchStatus.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchStatus.json
new file mode 100644
index 00000000..924727d3
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchStatus.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetBatchStatus",
+ "fully_qualified_name": "MailchimpTransactionApi.GetBatchStatus@0.1.0",
+ "description": "Retrieve the status of a Mailchimp batch request.\n\nUse this tool to check the current status of a specific batch request in Mailchimp, identified by its batch ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "batch_operation_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp batch operation to check its status.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch operation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "batch_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "excluded_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getBatchesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batches/{batch_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "excluded_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "batch_id",
+ "tool_parameter_name": "batch_operation_id",
+ "description": "The unique id for the batch operation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch operation."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchSummaries.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchSummaries.json
new file mode 100644
index 00000000..609e799e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchSummaries.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetBatchSummaries",
+ "fully_qualified_name": "MailchimpTransactionApi.GetBatchSummaries@0.1.0",
+ "description": "Retrieve a summary of batch requests from Mailchimp.\n\nCall this tool to obtain a summary of batch requests that have been executed in Mailchimp. Useful for monitoring and tracking the status and details of past batch operations.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of specific fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "record_count_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, from 1 to 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0, used for navigating through large sets of data.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getBatches'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batches",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_to_return",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "record_count_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchWebhookInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchWebhookInfo.json
new file mode 100644
index 00000000..0ce26fa9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetBatchWebhookInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetBatchWebhookInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetBatchWebhookInfo@0.1.0",
+ "description": "Retrieve details of a specific batch webhook on Mailchimp.\n\nUse this tool to get information about a specific batch webhook in a Mailchimp account. It retrieves details such as status and metadata of the specified webhook.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "batch_webhook_id",
+ "required": true,
+ "description": "The unique ID for the batch webhook to retrieve information from Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "batch_webhook_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Specify fields to include in response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the batch webhook details. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getBatchWebhook'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batch-webhooks/{batch_webhook_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "batch_webhook_id",
+ "tool_parameter_name": "batch_webhook_id",
+ "description": "The unique id for the batch webhook.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAbuseReportDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAbuseReportDetails.json
new file mode 100644
index 00000000..682f3785
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAbuseReportDetails.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCampaignAbuseReportDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignAbuseReportDetails@0.1.0",
+ "description": "Retrieve details of an abuse report for a campaign.\n\nUse this tool to get information about a specific abuse report related to a campaign. It should be called when detailed information about an abuse report is required for analysis or record-keeping.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign to fetch the abuse report details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "abuse_report_id",
+ "required": true,
+ "description": "The unique identifier for the abuse report. This ID is necessary to retrieve the specific report details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the abuse report."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "report_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdAbuseReportsIdId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/abuse-reports/{report_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "report_id",
+ "tool_parameter_name": "abuse_report_id",
+ "description": "The id for the abuse report.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the abuse report."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAbuseReports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAbuseReports.json
new file mode 100644
index 00000000..d25b03cb
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAbuseReports.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignAbuseReports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignAbuseReports@0.1.0",
+ "description": "Get a list of abuse complaints for a specific campaign.\n\nCall this tool to retrieve and review all abuse complaints related to a particular email marketing campaign. Useful for tracking and managing issues with campaign recipients reporting spam or other abuses.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the email marketing campaign to fetch abuse complaints.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for nested fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude in the response using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdAbuseReportsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/abuse-reports",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAdviceFeedback.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAdviceFeedback.json
new file mode 100644
index 00000000..a24c070c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignAdviceFeedback.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignAdviceFeedback",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignAdviceFeedback@0.1.0",
+ "description": "Get feedback based on a campaign's performance data.\n\nThis tool provides advice and feedback derived from various campaign statistics, such as open rates, click-through rates, unsubscribes, and bounces. Use it to gain insights into campaign effectiveness and areas for improvement.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the campaign to get advice feedback on.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated fields to include in the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to omit in the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdAdvice'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/advice",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_to_return",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignClickDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignClickDetails.json
new file mode 100644
index 00000000..29bdf377
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignClickDetails.json
@@ -0,0 +1,305 @@
+{
+ "name": "GetCampaignClickDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignClickDetails@0.1.0",
+ "description": "Get details about link clicks in Mailchimp campaigns.\n\nUse this tool to obtain detailed information about clicks on specific links in your Mailchimp marketing campaigns. It helps analyze the engagement by providing insights into which links were clicked and how often.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for a specific Mailchimp campaign. Required to fetch corresponding click details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of click records to return. The default is 10, and the maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "sort_by_field",
+ "required": false,
+ "description": "Specify the field to sort click reports by, such as 'clicks', 'unique_clicks', or 'link_name'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns click reports sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_direction",
+ "required": false,
+ "description": "Determines the order direction for sorted results, such as ascending or descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdClickDetails'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/click-details",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_by_field",
+ "description": "Returns click reports sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns click reports sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignContent.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignContent.json
new file mode 100644
index 00000000..4842b1f8
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignContent.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignContent",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignContent@0.1.0",
+ "description": "Retrieve the HTML and plain-text content for a Mailchimp campaign.\n\nUse this tool to get the content of a specific Mailchimp campaign by providing its campaign ID. The response includes both HTML and plain-text content, useful for viewing or analyzing email campaigns in detail.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to retrieve content for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation to specify sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude when retrieving campaign content. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaignsIdContent'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/content",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignDetails.json
new file mode 100644
index 00000000..52fee689
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignDetails.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetCampaignDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignDetails@0.1.0",
+ "description": "Retrieve details of a specific marketing campaign.\n\nUse this tool to get detailed information about a specific campaign using its ID. It provides insights and data related to that campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the campaign to retrieve details about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Specify a comma-separated list of fields to return, using dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "required": false,
+ "description": "Include the `resend_shortcut_eligibility` field in the response to check if the campaign is eligible for Campaign Resend Shortcuts.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_resend_shortcut_eligibility"
+ },
+ {
+ "name": "include_resend_shortcut_usage",
+ "required": false,
+ "description": "Include this to receive the `resend_shortcut_usage` field, providing details about campaigns related by a shortcut.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_usage` field in the response. This includes information about campaigns related by a shortcut."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_resend_shortcut_usage"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaignsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_resend_shortcut_eligibility",
+ "tool_parameter_name": "include_resend_shortcut_eligibility",
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_eligibility` field in the response, which tells you if the campaign is eligible for the various Campaign Resend Shortcuts offered."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_resend_shortcut_usage",
+ "tool_parameter_name": "include_resend_shortcut_usage",
+ "description": "Return the `resend_shortcut_usage` field in the response. This includes information about campaigns related by a shortcut.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the `resend_shortcut_usage` field in the response. This includes information about campaigns related by a shortcut."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignDomainPerformance.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignDomainPerformance.json
new file mode 100644
index 00000000..b7282591
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignDomainPerformance.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignDomainPerformance",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignDomainPerformance@0.1.0",
+ "description": "Get top domain performance for an email campaign.\n\nRetrieve statistics on how email domains have performed in a specific campaign using the campaign ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the email campaign to retrieve domain performance statistics.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_report",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the report, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdDomainPerformance'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/domain-performance",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_report",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignEmailActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignEmailActivity.json
new file mode 100644
index 00000000..5e15fd83
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignEmailActivity.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetCampaignEmailActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignEmailActivity@0.1.0",
+ "description": "Retrieve specific list member's activity in a campaign.\n\nGet detailed information on a list member's activity in a campaign, including opens, clicks, and bounces, by providing the campaign ID and subscriber hash.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign whose member activity is being retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "subscriber_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address for which you want to retrieve activity.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "restrict_activity_since",
+ "required": false,
+ "description": "Restrict results to email activity events occurring after this time (ISO 8601 format).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdEmailActivityId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/email-activity/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since",
+ "tool_parameter_name": "restrict_activity_since",
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFeedbackMessage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFeedbackMessage.json
new file mode 100644
index 00000000..5d080ec7
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFeedbackMessage.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCampaignFeedbackMessage",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignFeedbackMessage@0.1.0",
+ "description": "Retrieve a specific feedback message from a campaign.\n\nUse this tool to get detailed feedback from a specific campaign by providing the campaign and feedback identifiers.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign to retrieve the specific feedback message.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "feedback_message_id",
+ "required": true,
+ "description": "The unique identifier for the feedback message to retrieve from the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "feedback_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_feedback",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the feedback. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaignsIdFeedbackId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/feedback/{feedback_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_feedback",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "feedback_id",
+ "tool_parameter_name": "feedback_message_id",
+ "description": "The unique id for the feedback message.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFolderInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFolderInfo.json
new file mode 100644
index 00000000..a58cd818
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFolderInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignFolderInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignFolderInfo@0.1.0",
+ "description": "Get details about a specific campaign folder.\n\nCall this tool to retrieve information about a specific campaign folder used for organizing campaigns in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_folder_id",
+ "required": true,
+ "description": "The unique identifier for the campaign folder. Used to specify which folder's information to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Specify a comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaignFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaign-folders/{folder_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "campaign_folder_id",
+ "description": "The unique id for the campaign folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFolders.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFolders.json
new file mode 100644
index 00000000..bdbcdc6a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignFolders.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCampaignFolders",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignFolders@0.1.0",
+ "description": "Retrieve all folders used to organize campaigns.\n\nUse this tool to get a list of all folders created for organizing your campaigns in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of campaign folders to return, between 1 and 1000. Defaults to 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Defaults to 0. Use for fetching subsequent pages.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaignFolders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaign-folders",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignLinkClickDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignLinkClickDetails.json
new file mode 100644
index 00000000..08029d62
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignLinkClickDetails.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCampaignLinkClickDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignLinkClickDetails@0.1.0",
+ "description": "Get click details for a specific campaign link.\n\nFetch detailed click information for a specific link within a Mailchimp campaign report. Useful for analyzing link engagement.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to fetch link click details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "link_identifier",
+ "required": true,
+ "description": "The unique identifier for the link whose click details are to be retrieved in the campaign report.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "link_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "excluded_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdClickDetailsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/click-details/{link_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "excluded_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "link_id",
+ "tool_parameter_name": "link_identifier",
+ "description": "The id for the link.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignOpenDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignOpenDetails.json
new file mode 100644
index 00000000..94567aa7
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignOpenDetails.json
@@ -0,0 +1,338 @@
+{
+ "name": "GetCampaignOpenDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignOpenDetails@0.1.0",
+ "description": "Get details on opened campaign emails by list members.\n\nUse this tool to retrieve detailed information about emails from a specific campaign that were opened by list members. Ideal for understanding engagement and assessing campaign performance.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign. Required to retrieve open details for specific campaign emails.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "required": false,
+ "description": "Comma-separated fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records from the collection to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "start_date_time_for_campaign_open_events",
+ "required": false,
+ "description": "Restrict results to campaign open events that occur after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to campaign open events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since"
+ },
+ {
+ "name": "sort_by_field",
+ "required": false,
+ "description": "Specify the field by which to sort the open reports. Choose from available fields to determine the order of results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns open reports sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Specify the order direction for sorted results. Use 'asc' for ascending or 'desc' for descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdOpenDetails'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/open-details",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_to_return",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since",
+ "tool_parameter_name": "start_date_time_for_campaign_open_events",
+ "description": "Restrict results to campaign open events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to campaign open events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_by_field",
+ "description": "Returns open reports sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns open reports sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignProductActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignProductActivity.json
new file mode 100644
index 00000000..5d3175e8
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignProductActivity.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetCampaignProductActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignProductActivity@0.1.0",
+ "description": "Get breakdown of product activity for a campaign.\n\nThis tool retrieves the breakdown of product activity related to a specific marketing campaign from Mailchimp. It should be called when detailed ecommerce product performance data for a campaign is needed.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign whose product activity is being retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of records to return, between 1 and 1000. Defaults to 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "sort_results_by_field",
+ "required": false,
+ "description": "Specify the field by which to sort the product activity results. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdEcommerceProductActivity'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/ecommerce-product-activity",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_response",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_results_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignRecipientInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignRecipientInfo.json
new file mode 100644
index 00000000..7a8aa562
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignRecipientInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCampaignRecipientInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignRecipientInfo@0.1.0",
+ "description": "Get information about a specific campaign recipient.\n\nUse this tool to retrieve details about a particular recipient of a Mailchimp marketing campaign. Provide the campaign ID and subscriber hash to access the information.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique ID for the campaign for which recipient information is requested. It should be in string format and is required to identify the specific campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "recipient_subscriber_hash",
+ "required": true,
+ "description": "MD5 hash of the lowercase version of the recipient's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "excluded_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdSentToId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/sent-to/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "excluded_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "recipient_subscriber_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignRecipients.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignRecipients.json
new file mode 100644
index 00000000..cf670114
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignRecipients.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetCampaignRecipients",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignRecipients@0.1.0",
+ "description": "Retrieve information about campaign recipients.\n\nUse this tool to obtain detailed information about recipients of a specific marketing campaign. It provides insights into who received the campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_identifier",
+ "required": true,
+ "description": "The unique identifier for the specific campaign whose recipients you want to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of recipient records to return, between 1 and 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdSentTo'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/sent-to",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_identifier",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignReportDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignReportDetails.json
new file mode 100644
index 00000000..b2e4d41b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignReportDetails.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignReportDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignReportDetails@0.1.0",
+ "description": "Retrieve detailed report for a specific sent campaign.\n\nUse this tool to access the report details of a specific campaign that has been sent. It provides insights and metrics for evaluating the campaign's performance.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique ID for the campaign to retrieve its report details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to be excluded from the response. Use dot notation for sub-object references.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignReports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignReports.json
new file mode 100644
index 00000000..0fcd1d86
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignReports.json
@@ -0,0 +1,305 @@
+{
+ "name": "GetCampaignReports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignReports@0.1.0",
+ "description": "Retrieve detailed campaign reports from Mailchimp.\n\nThis tool retrieves campaign performance reports from Mailchimp Marketing. It should be called when detailed analytics about email campaigns are needed, such as open rates, click rates, and other metrics.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, ranging from 10 to 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "campaign_type",
+ "required": false,
+ "description": "Specify the type of campaign to retrieve reports for. Valid options are dependent on Mailchimp's supported campaign types.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "restrict_to_campaigns_sent_before",
+ "required": false,
+ "description": "Restrict response to campaigns sent before this ISO 8601 time format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_send_time"
+ },
+ {
+ "name": "restrict_to_campaigns_sent_after",
+ "required": false,
+ "description": "Restrict the response to campaigns sent after the specified ISO 8601 date and time.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_send_time"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReports'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "campaign_type",
+ "description": "The campaign type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign type."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_send_time",
+ "tool_parameter_name": "restrict_to_campaigns_sent_before",
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_send_time",
+ "tool_parameter_name": "restrict_to_campaigns_sent_after",
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to campaigns sent after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSocialActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSocialActivity.json
new file mode 100644
index 00000000..c6c001de
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSocialActivity.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignSocialActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignSocialActivity@0.1.0",
+ "description": "Get social activity summary for a campaign using EepURL.\n\nUse this tool to retrieve a summary of social activity tracked by EepURL for a specific campaign in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique id for the campaign to retrieve its social activity summary.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdEepurl'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/eepurl",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSubReports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSubReports.json
new file mode 100644
index 00000000..a2661a8f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSubReports.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetCampaignSubReports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignSubReports@0.1.0",
+ "description": "Retrieve sub-reports of a specific parent campaign.\n\nUse this tool to get the reports of child campaigns associated with a particular parent campaign in Mailchimp. Useful for analyzing the performance of linked campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique ID of the parent campaign to retrieve sub-reports for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdSubReportsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/sub-reports",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSubscriberOpenDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSubscriberOpenDetails.json
new file mode 100644
index 00000000..10a0f47d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCampaignSubscriberOpenDetails.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCampaignSubscriberOpenDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCampaignSubscriberOpenDetails@0.1.0",
+ "description": "Retrieve details of a subscriber who opened a campaign.\n\nThis tool fetches information about a specific subscriber who opened a given email campaign. It is useful for tracking engagement and understanding subscriber behavior in email marketing campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign to retrieve subscriber open details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the subscriber's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return for the subscriber's open details. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdOpenDetailsIdMembersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/open-details/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_response",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_email_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCartInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCartInfo.json
new file mode 100644
index 00000000..37d09b5b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCartInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCartInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCartInfo@0.1.0",
+ "description": "Fetch information about a specific ecommerce cart.\n\nUse this tool to retrieve detailed information about a specific cart in an ecommerce store. It's useful for scenarios where you need to understand the contents or status of a cart identified by store and cart IDs.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store. Use this to specify which store's cart information to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "required": true,
+ "description": "The unique identifier for the cart in the ecommerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Specify a comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for nested objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdCartsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_identifier",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCartLineItemsInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCartLineItemsInfo.json
new file mode 100644
index 00000000..3a1e80ff
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCartLineItemsInfo.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetCartLineItemsInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCartLineItemsInfo@0.1.0",
+ "description": "Retrieve information about a cart's line items.\n\nUse this tool to get details about the items in a specific cart within an ecommerce store. It provides insights into products added to a cart.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store containing the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_id",
+ "required": true,
+ "description": "The unique identifier for the cart to retrieve line items for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Specify fields to exclude from the response. Use a comma-separated list with dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "The number of cart line items to return, from 1 to 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Defaults to 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdCartsIdLines'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_id",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetChimpChatterActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetChimpChatterActivity.json
new file mode 100644
index 00000000..e35b5ff6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetChimpChatterActivity.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetChimpChatterActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.GetChimpChatterActivity@0.1.0",
+ "description": "Retrieve the latest Chimp Chatter activity for your account.\n\nUse this tool to fetch the most recent Chimp Chatter activity feed from your Mailchimp account. This provides updates ordered by the latest first.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of Chimp Chatter records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getActivityFeedChimpChatter'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/activity-feed/chimp-chatter",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetClassicAutomationsSummary.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetClassicAutomationsSummary.json
new file mode 100644
index 00000000..b9af7704
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetClassicAutomationsSummary.json
@@ -0,0 +1,371 @@
+{
+ "name": "GetClassicAutomationsSummary",
+ "fully_qualified_name": "MailchimpTransactionApi.GetClassicAutomationsSummary@0.1.0",
+ "description": "Fetch a summary of an account's classic automations.\n\nCall this tool to obtain a summary of classic automations set up in a Mailchimp account, useful for understanding automation configurations and statuses.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of automation records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "restrict_before_create_time",
+ "required": false,
+ "description": "Restrict the response to automations created before the specified time in ISO 8601 format. Example: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations created before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_create_time"
+ },
+ {
+ "name": "created_after_time",
+ "required": false,
+ "description": "Specify the time to filter automations created after this date-time. Use ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations created after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_create_time"
+ },
+ {
+ "name": "restrict_to_automations_started_before",
+ "required": false,
+ "description": "Restrict the response to automations started before this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations started before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_start_time"
+ },
+ {
+ "name": "start_time_after",
+ "required": false,
+ "description": "Restrict the response to automations started after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations started after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_start_time"
+ },
+ {
+ "name": "automation_status_filter",
+ "required": false,
+ "description": "Specify the status of automations to filter results (e.g., 'active', 'paused').",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the results to automations with the specified status."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "status"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomations'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_create_time",
+ "tool_parameter_name": "restrict_before_create_time",
+ "description": "Restrict the response to automations created before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations created before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_create_time",
+ "tool_parameter_name": "created_after_time",
+ "description": "Restrict the response to automations created after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations created after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_start_time",
+ "tool_parameter_name": "restrict_to_automations_started_before",
+ "description": "Restrict the response to automations started before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations started before this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_start_time",
+ "tool_parameter_name": "start_time_after",
+ "description": "Restrict the response to automations started after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to automations started after this time. Uses the ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "status",
+ "tool_parameter_name": "automation_status_filter",
+ "description": "Restrict the results to automations with the specified status.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the results to automations with the specified status."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedApps.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedApps.json
new file mode 100644
index 00000000..b6479713
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedApps.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetConnectedApps",
+ "fully_qualified_name": "MailchimpTransactionApi.GetConnectedApps@0.1.0",
+ "description": "Retrieve registered connected applications for an account.\n\nUse this tool to get a list of applications that are registered and connected to a Mailchimp account.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response, referencing sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAuthorizedApps'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/authorized-apps",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_response",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedSiteInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedSiteInfo.json
new file mode 100644
index 00000000..993414a9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedSiteInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetConnectedSiteInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetConnectedSiteInfo@0.1.0",
+ "description": "Retrieve details of a specific connected site.\n\nUse this tool to get information about a connected site using its ID. It provides various details related to the site.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "connected_site_identifier",
+ "required": true,
+ "description": "The unique identifier for the connected site to retrieve its information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "connected_site_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Specify a comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getConnectedSitesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/connected-sites/{connected_site_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "connected_site_id",
+ "tool_parameter_name": "connected_site_identifier",
+ "description": "The unique identifier for the site.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedSites.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedSites.json
new file mode 100644
index 00000000..1ff5cd46
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetConnectedSites.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetConnectedSites",
+ "fully_qualified_name": "MailchimpTransactionApi.GetConnectedSites@0.1.0",
+ "description": "Retrieve all connected sites from a Mailchimp account.\n\nUse this tool to get a list of all sites connected to a Mailchimp account. Ideal for managing or reviewing the connected site configurations.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A list of fields to exclude, using dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getConnectedSites'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/connected-sites",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCustomerInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCustomerInfo.json
new file mode 100644
index 00000000..1f1a26e5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetCustomerInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetCustomerInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetCustomerInfo@0.1.0",
+ "description": "Retrieve specific customer information from an eCommerce store.\n\nUse this tool to get detailed information about a specific customer from an eCommerce store using their customer ID and store ID. Ideal for checking customer profiles, transaction histories, and personal information tied to their account.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the eCommerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "customer_id",
+ "required": true,
+ "description": "The unique identifier for a customer in a specific store. Required to fetch customer details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "customer_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return for the customer data. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdCustomersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "customer_id",
+ "tool_parameter_name": "customer_id",
+ "description": "The id for the customer of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetDailyListActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetDailyListActivity.json
new file mode 100644
index 00000000..c8790d04
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetDailyListActivity.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetDailyListActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.GetDailyListActivity@0.1.0",
+ "description": "Fetch daily detailed activity stats for a list in Mailchimp.\n\nRetrieve up to the previous 180 days of aggregated daily activity statistics for a specific list, excluding Automation activity.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list to retrieve activity stats.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdActivity'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/activity",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetDomainDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetDomainDetails.json
new file mode 100644
index 00000000..66afabe5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetDomainDetails.json
@@ -0,0 +1,107 @@
+{
+ "name": "GetDomainDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetDomainDetails@0.1.0",
+ "description": "Retrieve details for a specific verified domain.\n\nUse this tool to get the details of a single verified domain on your Mailchimp account. Useful for accessing domain-specific information.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "domain_name",
+ "required": true,
+ "description": "The domain name to retrieve details for. Must be a verified domain on the account.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "domain_name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getVerifiedDomain'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/verified-domains/{domain_name}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "domain_name",
+ "tool_parameter_name": "domain_name",
+ "description": "The domain name.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetEcommerceStoreInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetEcommerceStoreInfo.json
new file mode 100644
index 00000000..ffe94a7c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetEcommerceStoreInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetEcommerceStoreInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetEcommerceStoreInfo@0.1.0",
+ "description": "Retrieve detailed information about a specific eCommerce store.\n\nUse this tool to get detailed information about a specific store in Mailchimp's eCommerce service. Call this when you need to access store data, such as name, domain, or other relevant attributes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "A unique identifier for the store to retrieve information about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "excluded_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "excluded_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetEcommerceStoresInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetEcommerceStoresInfo.json
new file mode 100644
index 00000000..2a12e0cd
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetEcommerceStoresInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetEcommerceStoresInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetEcommerceStoresInfo@0.1.0",
+ "description": "Retrieve information about all ecommerce stores in the account.\n\nThis tool fetches details of all ecommerce stores linked to the account, enabling insights into store data.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for nested objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "Specify the number of store records to return (10 to 1000).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStores'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdDetails.json
new file mode 100644
index 00000000..2d2969a7
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdDetails.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetFacebookAdDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFacebookAdDetails@0.1.0",
+ "description": "Retrieve details of a specific Facebook ad campaign.\n\nUse this tool to fetch detailed information about a specific Facebook ad by providing its outreach ID. This can be helpful for tracking ad performance or reviewing campaign specifics.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "facebook_ad_outreach_id",
+ "required": true,
+ "description": "The unique outreach ID of the Facebook ad to retrieve details for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "outreach_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return; use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getFacebookAdsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/facebook-ads/{outreach_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "outreach_id",
+ "tool_parameter_name": "facebook_ad_outreach_id",
+ "description": "The outreach id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdReport.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdReport.json
new file mode 100644
index 00000000..02efe162
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdReport.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetFacebookAdReport",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFacebookAdReport@0.1.0",
+ "description": "Get report details of a Facebook ad campaign.\n\nUse this tool to retrieve detailed reports of a specific Facebook advertisement managed through Mailchimp. This is useful for analyzing ad performance and outreach impact.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "outreach_id",
+ "required": true,
+ "description": "The unique identifier for the Facebook ad campaign to retrieve the report for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "outreach_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "List of fields to exclude from the report, using comma-separated values. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingFacebookAdsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/facebook-ads/{outreach_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "outreach_id",
+ "tool_parameter_name": "outreach_id",
+ "description": "The outreach id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsList.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsList.json
new file mode 100644
index 00000000..4992514a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsList.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetFacebookAdsList",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFacebookAdsList@0.1.0",
+ "description": "Retrieve a list of Facebook ads from Mailchimp.\n\nUse this tool to obtain a list of Facebook ads managed within Mailchimp. Ideal for getting an overview of current ad campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of specific fields to return in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Utilize dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_count",
+ "required": false,
+ "description": "Specify the number of Facebook ad records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination, with a default of 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "sort_by_field",
+ "required": false,
+ "description": "Specify the field by which to sort the Facebook ads.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_direction",
+ "required": false,
+ "description": "Specifies the sorting order: 'asc' for ascending or 'desc' for descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAllFacebookAds'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/facebook-ads",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsProductActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsProductActivity.json
new file mode 100644
index 00000000..8015efd3
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsProductActivity.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetFacebookAdsProductActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFacebookAdsProductActivity@0.1.0",
+ "description": "Retrieve product activity breakdown for a Facebook ads outreach.\n\nThis tool provides a breakdown of ecommerce product activity for a specific Facebook ads outreach campaign. It should be called when detailed analytics of product performance related to a Facebook ad outreach is needed.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "outreach_id",
+ "required": true,
+ "description": "The unique identifier for the Facebook ads outreach campaign to retrieve the product activity breakdown.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "outreach_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of records to return. Default is 10. Maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "sort_by_field",
+ "required": false,
+ "description": "Specify the field to sort the returned records by, using the field name.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingFacebookAdsIdEcommerceProductActivity'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/facebook-ads/{outreach_id}/ecommerce-product-activity",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "outreach_id",
+ "tool_parameter_name": "outreach_id",
+ "description": "The outreach id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsReports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsReports.json
new file mode 100644
index 00000000..cb9c10d5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFacebookAdsReports.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetFacebookAdsReports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFacebookAdsReports@0.1.0",
+ "description": "Get reports of Facebook ads for marketing analysis.\n\nUse this tool to retrieve detailed reports of Facebook ads data, which can be essential for analyzing marketing campaigns and performance metrics.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude in the report. Use dot notation for sub-objects if needed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "required": false,
+ "description": "Specify the number of Facebook ads records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "sorting_field_for_results",
+ "required": false,
+ "description": "Specifies the field by which to sort the Facebook ads report results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Specifies the order direction for sorting results. Use 'asc' for ascending and 'desc' for descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingFacebookAds'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/facebook-ads",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "record_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sorting_field_for_results",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFileInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFileInfo.json
new file mode 100644
index 00000000..a41cdbcb
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFileInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetFileManagerFileInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFileManagerFileInfo@0.1.0",
+ "description": "Retrieve information about a specific file from Mailchimp's File Manager.\n\nUse this tool to get detailed information about a specific file stored in Mailchimp's File Manager using the file ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_manager_file_id",
+ "required": true,
+ "description": "The unique ID for the File Manager file to retrieve its information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "file_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation to specify sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getFileManagerFilesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/files/{file_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "file_id",
+ "tool_parameter_name": "file_manager_file_id",
+ "description": "The unique id for the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFiles.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFiles.json
new file mode 100644
index 00000000..974121b0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFiles.json
@@ -0,0 +1,404 @@
+{
+ "name": "GetFileManagerFiles",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFileManagerFiles@0.1.0",
+ "description": "Retrieve images and files from the Mailchimp File Manager.\n\nUse this tool to get a list of all images and files stored in the File Manager of the Mailchimp account. It provides access to media assets used in marketing campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated fields to omit from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specifies the number of records to return. Default is 10; maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "file_type",
+ "required": false,
+ "description": "The file type to filter File Manager files. Expected as a string value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The file type for the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "file_created_by_user",
+ "required": false,
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_by"
+ },
+ {
+ "name": "restrict_files_before_date",
+ "required": false,
+ "description": "Restrict the response to files created before the specified ISO 8601 date.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_created_at"
+ },
+ {
+ "name": "created_after_date",
+ "required": false,
+ "description": "Files created after this date will be included in the response. Use ISO 8601 format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_created_at"
+ },
+ {
+ "name": "file_sort_field",
+ "required": false,
+ "description": "Specify the field to sort the files by, such as 'name', 'date', etc.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Sets the order direction for sorting results. Use 'ASC' for ascending and 'DESC' for descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getFileManagerFiles'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/files",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "file_type",
+ "description": "The file type for the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The file type for the File Manager file."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_by",
+ "tool_parameter_name": "file_created_by_user",
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_created_at",
+ "tool_parameter_name": "restrict_files_before_date",
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_created_at",
+ "tool_parameter_name": "created_after_date",
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "file_sort_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFolderInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFolderInfo.json
new file mode 100644
index 00000000..ecb36918
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFileManagerFolderInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetFileManagerFolderInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFileManagerFolderInfo@0.1.0",
+ "description": "Retrieve details of a specific folder from File Manager.\n\nUse this tool to get information about a particular folder in Mailchimp's File Manager. It's useful for accessing folder-specific details, such as name and metadata.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_manager_folder_id",
+ "required": true,
+ "description": "The unique identifier for the File Manager folder to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of specific fields to return, use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getFileManagerFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/folders/{folder_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "file_manager_folder_id",
+ "description": "The unique id for the File Manager folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFolderFiles.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFolderFiles.json
new file mode 100644
index 00000000..6a87e7f6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetFolderFiles.json
@@ -0,0 +1,437 @@
+{
+ "name": "GetFolderFiles",
+ "fully_qualified_name": "MailchimpTransactionApi.GetFolderFiles@0.1.0",
+ "description": "Retrieve files and images from a specific folder.\n\nUse this tool to get a list of available images and files stored in a specified folder within Mailchimp's file manager. Ideal for accessing and managing digital assets.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_manager_folder_id",
+ "required": true,
+ "description": "The unique identifier for the specific File Manager folder to retrieve files from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "required": false,
+ "description": "Specifies the number of files to retrieve, with a default of 10 and a maximum of 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0. Use this to access pages beyond the first one.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "file_type",
+ "required": false,
+ "description": "Specifies the file type to filter files in the folder. Use to retrieve specific types like 'image', 'document', etc.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The file type for the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "file_creator_user",
+ "required": false,
+ "description": "Mailchimp account user who created the File Manager file. Filter results by this user's contributions.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_by"
+ },
+ {
+ "name": "restrict_files_before_date",
+ "required": false,
+ "description": "Restrict response to files created before this date using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_created_at"
+ },
+ {
+ "name": "filter_files_created_after",
+ "required": false,
+ "description": "Restrict the response to files created after the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_created_at"
+ },
+ {
+ "name": "sort_by_field",
+ "required": false,
+ "description": "Specify the field to sort the files by, such as name or size.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Specify the order direction for sorting results. Typically 'asc' for ascending or 'desc' for descending order.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getFileManagerFoldersFiles'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/folders/{folder_id}/files",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "file_type",
+ "description": "The file type for the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The file type for the File Manager file."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_by",
+ "tool_parameter_name": "file_creator_user",
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_created_at",
+ "tool_parameter_name": "restrict_files_before_date",
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_created_at",
+ "tool_parameter_name": "filter_files_created_after",
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "file_manager_folder_id",
+ "description": "The unique id for the File Manager folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestCategoryInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestCategoryInfo.json
new file mode 100644
index 00000000..0a513396
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestCategoryInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetInterestCategoryInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetInterestCategoryInfo@0.1.0",
+ "description": "Fetch specific interest category details from a Mailchimp list.\n\nUse this tool to get detailed information about a specific interest category within a Mailchimp list. This is useful for understanding subscriber interests and organizing lists more effectively.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list you want to retrieve interest category details from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_unique_id",
+ "required": true,
+ "description": "The unique ID for the interest category you want to retrieve information about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdInterestCategoriesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_unique_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestCategoryInterests.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestCategoryInterests.json
new file mode 100644
index 00000000..fff67209
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestCategoryInterests.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetInterestCategoryInterests",
+ "fully_qualified_name": "MailchimpTransactionApi.GetInterestCategoryInterests@0.1.0",
+ "description": "Retrieve interests for a specific category in Mailchimp.\n\nUse this tool to get a list of interests within a specific category of a Mailchimp list. It helps in understanding what options are available under a given interest category for targeted marketing strategies.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_unique_id",
+ "required": true,
+ "description": "The unique identifier for a specific interest category in a Mailchimp list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation as needed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "excluded_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, between 10 and 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_skip_count",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdInterestCategoriesIdInterests'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}/interests",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "excluded_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_skip_count",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_unique_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestGroupNames.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestGroupNames.json
new file mode 100644
index 00000000..ce630b31
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetInterestGroupNames.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetInterestGroupNames",
+ "fully_qualified_name": "MailchimpTransactionApi.GetInterestGroupNames@0.1.0",
+ "description": "Retrieve interest group names for a specific category.\n\nUse this tool to fetch interests or 'group names' associated with a specific category in a Mailchimp list. It is useful for managing or displaying group names to users.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list to retrieve interest group names from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "required": true,
+ "description": "The unique identifier for the interest category in a Mailchimp list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "specific_interest_group_name",
+ "required": true,
+ "description": "The specific interest or group name to retrieve in the category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdInterestCategoriesIdInterestsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_id",
+ "tool_parameter_name": "specific_interest_group_name",
+ "description": "The specific interest or 'group name'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageHtml.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageHtml.json
new file mode 100644
index 00000000..d29a8b8b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageHtml.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetLandingPageHtml",
+ "fully_qualified_name": "MailchimpTransactionApi.GetLandingPageHtml@0.1.0",
+ "description": "Retrieve the HTML content of a Mailchimp landing page.\n\n",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "landing_page_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp landing page to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "page_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for nested objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getLandingPageIdContent'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages/{page_id}/content",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "page_id",
+ "tool_parameter_name": "landing_page_id",
+ "description": "The unique id for the page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageInfo.json
new file mode 100644
index 00000000..ecc571f6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetLandingPageInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetLandingPageInfo@0.1.0",
+ "description": "Retrieve information about a specific landing page by ID.\n\nThis tool is used to fetch detailed information about a landing page using its ID. It should be called when you need to access the specifics of a given landing page.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "landing_page_id",
+ "required": true,
+ "description": "The unique identifier for the landing page to retrieve information about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "page_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getLandingPageId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages/{page_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "page_id",
+ "tool_parameter_name": "landing_page_id",
+ "description": "The unique id for the page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageReport.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageReport.json
new file mode 100644
index 00000000..6c7781cd
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageReport.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetLandingPageReport",
+ "fully_qualified_name": "MailchimpTransactionApi.GetLandingPageReport@0.1.0",
+ "description": "Retrieve the report for a specific landing page.\n\nUse this tool to get detailed reports on specific landing pages via their ID. Useful for analyzing landing page performance and metrics.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "landing_page_outreach_id",
+ "required": true,
+ "description": "The outreach ID for the landing page you want to retrieve the report for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "outreach_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_report_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the landing page report. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingLandingPagesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/landing-pages/{outreach_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_report_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "outreach_id",
+ "tool_parameter_name": "landing_page_outreach_id",
+ "description": "The outreach id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The outreach id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageReports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageReports.json
new file mode 100644
index 00000000..83f12157
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetLandingPageReports.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetLandingPageReports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetLandingPageReports@0.1.0",
+ "description": "Retrieve reports of landing pages from Mailchimp.\n\nUse this tool to get detailed analytics and reports on landing pages set up in Mailchimp. Ideal for understanding performance metrics and engagement data.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, from 1 to 1000. Defaults to 10 if not provided.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "records_to_skip",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingLandingPages'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/landing-pages",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "records_to_skip",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListGrowthSummary.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListGrowthSummary.json
new file mode 100644
index 00000000..7c2a3cee
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListGrowthSummary.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetListGrowthSummary",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListGrowthSummary@0.1.0",
+ "description": "Get a list's growth activity summary for a specific month and year.\n\nUse this tool to obtain a summary of the growth activity for a specific list in a given month and year on Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the specific list in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "specific_month_of_growth_history",
+ "required": true,
+ "description": "Specify the month and year (in 'YYYY-MM' format) for retrieving the list's growth history.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A specific month of list growth history."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "month"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdGrowthHistoryId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/growth-history/{month}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "month",
+ "tool_parameter_name": "specific_month_of_growth_history",
+ "description": "A specific month of list growth history.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A specific month of list growth history."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListInterestCategories.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListInterestCategories.json
new file mode 100644
index 00000000..61f7a7a9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListInterestCategories.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetListInterestCategories",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListInterestCategories@0.1.0",
+ "description": "Retrieve interest categories for a specific mailing list.\n\nUse this tool to obtain detailed information about the interest categories associated with a specific mailing list in Mailchimp Marketing.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique identifier for the mailing list you want to retrieve interest categories for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects. Helps reduce the size of the response by omitting unnecessary data.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "required": false,
+ "description": "The number of records to return. Specify a value from 10 to 1000. Defaults to 10 if not provided.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0. Use to manage pagination flow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "interest_group_type",
+ "required": false,
+ "description": "Specify the type of interest group to restrict results. Example: 'checkboxes', 'radio_buttons'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results a type of interest group"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdInterestCategories'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "record_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "interest_group_type",
+ "description": "Restrict results a type of interest group",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results a type of interest group"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListMemberInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListMemberInfo.json
new file mode 100644
index 00000000..46b4686b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListMemberInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetListMemberInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListMemberInfo@0.1.0",
+ "description": "Retrieve details about a specific list member in Mailchimp.\n\nGet information about a specific list member, including their subscription status and other details. Useful for tracking and managing member information in Mailchimp mailing lists.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to retrieve the member from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase list member's email, or the email address/contact_id itself.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListMemberNote.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListMemberNote.json
new file mode 100644
index 00000000..c8cf97d3
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListMemberNote.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetListMemberNote",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListMemberNote@0.1.0",
+ "description": "Retrieve a specific note for a list member.\n\nUse this tool to obtain details of a particular note associated with a member of a specific list. It's helpful for accessing specific interactions or annotations recorded for a list member.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the mailing list to retrieve a member's note from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase email, the email address itself, or contact ID for a list member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "note_id",
+ "required": true,
+ "description": "The unique identifier for the note associated with a list member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "note_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembersIdNotesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "note_id",
+ "tool_parameter_name": "note_id",
+ "description": "The id for the note.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSegmentsInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSegmentsInfo.json
new file mode 100644
index 00000000..985f180a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSegmentsInfo.json
@@ -0,0 +1,503 @@
+{
+ "name": "GetListSegmentsInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListSegmentsInfo@0.1.0",
+ "description": "Retrieve details of all segments for a specific list.\n\nUse this tool to get information about all available segments for a specific list in Mailchimp. It helps in understanding the segmentation structure of a mailing list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_identifier",
+ "required": true,
+ "description": "The unique identifier for the mailing list whose segments are to be retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_count",
+ "required": false,
+ "description": "The number of records to return. Default: 10. Max: 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "segment_type",
+ "required": false,
+ "description": "Specify the type of segment to filter results. Use known segment types as strings.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on segment type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "created_after_datetime",
+ "required": false,
+ "description": "Restrict results to segments created after the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_created_at"
+ },
+ {
+ "name": "restrict_to_segments_created_before",
+ "required": false,
+ "description": "Restrict results to segments created before the specified time. Use ISO 8601 format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_created_at"
+ },
+ {
+ "name": "include_cleaned_members",
+ "required": false,
+ "description": "Set to 'true' to include cleaned (bounced) members in the response. Use this to see members who have been removed due to email issues.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_cleaned"
+ },
+ {
+ "name": "include_transactional_members",
+ "required": false,
+ "description": "Specify whether to include transactional members in the response. Use 'true' or 'false'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_transactional"
+ },
+ {
+ "name": "include_unsubscribed_members",
+ "required": false,
+ "description": "Set to 'true' to include unsubscribed members in the response.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_unsubscribed"
+ },
+ {
+ "name": "restrict_since_updated_time",
+ "required": false,
+ "description": "Restrict results to segments updated after this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments update after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_updated_at"
+ },
+ {
+ "name": "restrict_to_segments_updated_before",
+ "required": false,
+ "description": "Restrict results to segments updated before the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments update before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_updated_at"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'previewASegment'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "segment_type",
+ "description": "Limit results based on segment type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Limit results based on segment type."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_created_at",
+ "tool_parameter_name": "created_after_datetime",
+ "description": "Restrict results to segments created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments created after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_created_at",
+ "tool_parameter_name": "restrict_to_segments_created_before",
+ "description": "Restrict results to segments created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments created before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_cleaned",
+ "tool_parameter_name": "include_cleaned_members",
+ "description": "Include cleaned members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_transactional",
+ "tool_parameter_name": "include_transactional_members",
+ "description": "Include transactional members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_unsubscribed",
+ "tool_parameter_name": "include_unsubscribed_members",
+ "description": "Include unsubscribed members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_updated_at",
+ "tool_parameter_name": "restrict_since_updated_time",
+ "description": "Restrict results to segments update after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments update after the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_updated_at",
+ "tool_parameter_name": "restrict_to_segments_updated_before",
+ "description": "Restrict results to segments update before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to segments update before the set time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_identifier",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSignupForms.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSignupForms.json
new file mode 100644
index 00000000..8b715034
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSignupForms.json
@@ -0,0 +1,107 @@
+{
+ "name": "GetListSignupForms",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListSignupForms@0.1.0",
+ "description": "Retrieve signup forms for a Mailchimp list.\n\nUse this tool to fetch all signup forms associated with a specific Mailchimp list using the list ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID of the Mailchimp list for retrieving signup forms.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdSignupForms'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/signup-forms",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSubscriberLocations.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSubscriberLocations.json
new file mode 100644
index 00000000..d276f7b5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSubscriberLocations.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetListSubscriberLocations",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListSubscriberLocations@0.1.0",
+ "description": "Retrieve subscriber location data by list.\n\nCall this tool to get the countries associated with the subscribers of a specific list in Mailchimp, based on geocoded IP addresses.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the subscriber list in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdLocations'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/locations",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSurveysInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSurveysInfo.json
new file mode 100644
index 00000000..a49283e9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListSurveysInfo.json
@@ -0,0 +1,107 @@
+{
+ "name": "GetListSurveysInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListSurveysInfo@0.1.0",
+ "description": "Retrieve information about surveys for a specific list.\n\nCall this tool to get information about all available surveys associated with a specific list in Mailchimp. Useful for managing and analyzing survey data linked to email lists.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the list to retrieve survey information. This ID is essential for specifying which list's surveys to access.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdSurveys'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/surveys",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListWebhooksInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListWebhooksInfo.json
new file mode 100644
index 00000000..4a3d28e7
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetListWebhooksInfo.json
@@ -0,0 +1,107 @@
+{
+ "name": "GetListWebhooksInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetListWebhooksInfo@0.1.0",
+ "description": "Get information about all webhooks for a specific list.\n\nUse this tool to retrieve detailed information about all the webhooks associated with a specified mailing list. Ideal for managing or auditing webhook configurations.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_identifier",
+ "required": true,
+ "description": "The unique identifier for the mailing list to retrieve webhook information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdWebhooks'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/webhooks",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_identifier",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpAccountExports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpAccountExports.json
new file mode 100644
index 00000000..c61d44e6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpAccountExports.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetMailchimpAccountExports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMailchimpAccountExports@0.1.0",
+ "description": "Retrieve a list of account exports in Mailchimp.\n\nCall this tool to get a list of account exports for a Mailchimp account, useful for tracking or managing account data exports.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for nested fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "required": false,
+ "description": "Specify the number of records to return. Defaults to 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0, used to manage data retrieval position.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAccountExports'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/account-exports",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpApiResources.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpApiResources.json
new file mode 100644
index 00000000..2b6becd8
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpApiResources.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetMailchimpApiResources",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMailchimpApiResources@0.1.0",
+ "description": "Retrieve all available Mailchimp API resource links.\n\nThis tool fetches links to all the resources available in the Mailchimp Marketing API, providing easy access to various API endpoints.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getRoot'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpCampaignFeedback.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpCampaignFeedback.json
new file mode 100644
index 00000000..5e0b5482
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpCampaignFeedback.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetMailchimpCampaignFeedback",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMailchimpCampaignFeedback@0.1.0",
+ "description": "Retrieve feedback comments for a Mailchimp campaign.\n\nUse this tool to get team feedback for a specific Mailchimp campaign by providing the campaign ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the specific Mailchimp campaign from which to retrieve feedback.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of specific fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the feedback data, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaignsIdFeedback'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/feedback",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpListInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpListInfo.json
new file mode 100644
index 00000000..11e23292
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpListInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetMailchimpListInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMailchimpListInfo@0.1.0",
+ "description": "Retrieve details of a specific list in Mailchimp.\n\nUse this tool to get detailed information about a specific list in your Mailchimp account, including members who are unconfirmed, unsubscribed, or cleaned.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "mailchimp_list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to retrieve information about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_in_mailchimp",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects, e.g., 'stats.member_count'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "include_total_contacts",
+ "required": false,
+ "description": "Set to true to include the approximate count of all contacts in any state (total_contacts) in the response.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_total_contacts"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_in_mailchimp",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_total_contacts",
+ "tool_parameter_name": "include_total_contacts",
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailchimp_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpListMembers.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpListMembers.json
new file mode 100644
index 00000000..7f619709
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpListMembers.json
@@ -0,0 +1,734 @@
+{
+ "name": "GetMailchimpListMembers",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMailchimpListMembers@0.1.0",
+ "description": "Retrieve member details from a specific Mailchimp list.\n\nUse this tool to get information about members within a specified Mailchimp list. It's useful for accessing subscriber details such as email addresses and subscription status.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to retrieve member information from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, between 10 and 1000, default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "email_type",
+ "required": false,
+ "description": "Specify the type of email format. Typically 'html' or 'text'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "email_type"
+ },
+ {
+ "name": "subscriber_status",
+ "required": false,
+ "description": "The status of the subscriber (e.g., subscribed, unsubscribed, cleaned, pending).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscriber's status."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "status"
+ },
+ {
+ "name": "opt_in_after_timestamp",
+ "required": false,
+ "description": "Restrict results to subscribers who opted-in after the specified timeframe in ISO 8601 format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers who opted-in after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_timestamp_opt"
+ },
+ {
+ "name": "opt_in_before_timestamp",
+ "required": false,
+ "description": "Restrict results to subscribers who opted in before the specified timeframe. Use ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers who opted-in before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_timestamp_opt"
+ },
+ {
+ "name": "changed_after_timestamp",
+ "required": false,
+ "description": "Restrict results to subscribers whose information changed after the specified timestamp in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers whose information changed after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_last_changed"
+ },
+ {
+ "name": "restrict_change_before_timeframe",
+ "required": false,
+ "description": "Restrict results to subscribers whose information changed before the provided timeframe in ISO 8601 format (e.g., '2015-10-21T15:41:36+00:00').",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers whose information changed before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_last_changed"
+ },
+ {
+ "name": "unique_email_identifier",
+ "required": false,
+ "description": "A unique identifier for the email address across all Mailchimp lists. Use this to filter for a specific member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the email address across all Mailchimp lists."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "unique_email_id"
+ },
+ {
+ "name": "filter_vip_members",
+ "required": false,
+ "description": "Filter to return only VIP list members. Use `true` for VIPs only, `false` for all members.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A filter to return only the list's VIP members. Passing `true` will restrict results to VIP list members, passing `false` will return all list members."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "vip_only"
+ },
+ {
+ "name": "interest_category_id",
+ "required": false,
+ "description": "The unique id for the interest category used to filter Mailchimp list members.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "filter_by_interest_ids",
+ "required": false,
+ "description": "Comma-separated list of interest IDs to filter list members. Must be combined with interest_category_id and interest_match.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_match. The value must be a comma separated list of interest ids present for any supplied interest categories."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_ids"
+ },
+ {
+ "name": "interest_match_filter",
+ "required": false,
+ "description": "Specify how to match list members by interests. Options: 'any', 'all', or 'none'. Must accompany interest_category_id and interest_ids.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_ids. \"any\" will match a member with any of the interest supplied, \"all\" will only match members with every interest supplied, and \"none\" will match members without any of the interest supplied."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_match"
+ },
+ {
+ "name": "sort_field_for_members",
+ "required": false,
+ "description": "Specifies the field by which to sort the list members.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Determines the order direction for sorted results. Common values are 'asc' for ascending and 'desc' for descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ },
+ {
+ "name": "filter_by_since_last_campaign",
+ "required": false,
+ "description": "Filter subscribers by their status (subscribed/unsubscribed/pending/cleaned) since the last email campaign. Requires member status.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter subscribers by those subscribed/unsubscribed/pending/cleaned since last email campaign send. Member status is required to use this filter."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_last_campaign"
+ },
+ {
+ "name": "filter_unsubscribed_since",
+ "required": false,
+ "description": "Filter subscribers who unsubscribed since a specific date. Must use 'unsubscribed' status only.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter subscribers by those unsubscribed since a specific date. Using any status other than unsubscribed with this filter will result in an error."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "unsubscribed_since"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "email_type",
+ "tool_parameter_name": "email_type",
+ "description": "The email type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email type."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "status",
+ "tool_parameter_name": "subscriber_status",
+ "description": "The subscriber's status.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscriber's status."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_timestamp_opt",
+ "tool_parameter_name": "opt_in_after_timestamp",
+ "description": "Restrict results to subscribers who opted-in after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers who opted-in after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_timestamp_opt",
+ "tool_parameter_name": "opt_in_before_timestamp",
+ "description": "Restrict results to subscribers who opted-in before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers who opted-in before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_last_changed",
+ "tool_parameter_name": "changed_after_timestamp",
+ "description": "Restrict results to subscribers whose information changed after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers whose information changed after the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_last_changed",
+ "tool_parameter_name": "restrict_change_before_timeframe",
+ "description": "Restrict results to subscribers whose information changed before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to subscribers whose information changed before the set timeframe. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "unique_email_id",
+ "tool_parameter_name": "unique_email_identifier",
+ "description": "A unique identifier for the email address across all Mailchimp lists.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the email address across all Mailchimp lists."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "vip_only",
+ "tool_parameter_name": "filter_vip_members",
+ "description": "A filter to return only the list's VIP members. Passing `true` will restrict results to VIP list members, passing `false` will return all list members.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A filter to return only the list's VIP members. Passing `true` will restrict results to VIP list members, passing `false` will return all list members."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_id",
+ "description": "The unique id for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the interest category."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_ids",
+ "tool_parameter_name": "filter_by_interest_ids",
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_match. The value must be a comma separated list of interest ids present for any supplied interest categories.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_match. The value must be a comma separated list of interest ids present for any supplied interest categories."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_match",
+ "tool_parameter_name": "interest_match_filter",
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_ids. \"any\" will match a member with any of the interest supplied, \"all\" will only match members with every interest supplied, and \"none\" will match members without any of the interest supplied.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used to filter list members by interests. Must be accompanied by interest_category_id and interest_ids. \"any\" will match a member with any of the interest supplied, \"all\" will only match members with every interest supplied, and \"none\" will match members without any of the interest supplied."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_field_for_members",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_last_campaign",
+ "tool_parameter_name": "filter_by_since_last_campaign",
+ "description": "Filter subscribers by those subscribed/unsubscribed/pending/cleaned since last email campaign send. Member status is required to use this filter.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter subscribers by those subscribed/unsubscribed/pending/cleaned since last email campaign send. Member status is required to use this filter."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "unsubscribed_since",
+ "tool_parameter_name": "filter_unsubscribed_since",
+ "description": "Filter subscribers by those unsubscribed since a specific date. Using any status other than unsubscribed with this filter will result in an error.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter subscribers by those unsubscribed since a specific date. Using any status other than unsubscribed with this filter will result in an error."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpTemplateFolders.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpTemplateFolders.json
new file mode 100644
index 00000000..d4f034b1
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpTemplateFolders.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetMailchimpTemplateFolders",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMailchimpTemplateFolders@0.1.0",
+ "description": "Retrieve all template folders from Mailchimp.\n\nUse this tool to retrieve all folders used in Mailchimp to organize templates. It is helpful for managing and categorizing your email templates.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of template folder records to return, up to a maximum of 1000. The default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getTemplateFolders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/template-folders",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpTemplateInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpTemplateInfo.json
new file mode 100644
index 00000000..676c5ca5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMailchimpTemplateInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetMailchimpTemplateInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMailchimpTemplateInfo@0.1.0",
+ "description": "Retrieves detailed information about a specific Mailchimp template.\n\nUse this tool to obtain information about a particular template in Mailchimp by providing the template ID. It is useful for retrieving template details when managing email marketing campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp template to retrieve information about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "template_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Specify a comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getTemplatesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/templates/{template_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "template_id",
+ "tool_parameter_name": "template_id",
+ "description": "The unique id for the template.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberActivity.json
new file mode 100644
index 00000000..ea36e226
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberActivity.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetMemberActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMemberActivity@0.1.0",
+ "description": "Retrieve recent email activity for a list member.\n\nCall this tool to get the last 50 activity events for a specific member on a Mailchimp list, including actions like opens, clicks, and unsubscribes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list you want to query.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "MD5 hash of the lowercase email, email address, or contact ID of the list member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "Comma-separated list of specific fields to retrieve for member activity, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_activity",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the member activity response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "actions_to_return",
+ "required": false,
+ "description": "Comma-separated list of specific member actions to retrieve, such as opens, clicks, and unsubscribes.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma seperated list of actions to return."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "action"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembersIdActivity'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/activity",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_activity",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "action",
+ "tool_parameter_name": "actions_to_return",
+ "description": "A comma seperated list of actions to return.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma seperated list of actions to return."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberActivityFeed.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberActivityFeed.json
new file mode 100644
index 00000000..919a45ad
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberActivityFeed.json
@@ -0,0 +1,305 @@
+{
+ "name": "GetMemberActivityFeed",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMemberActivityFeed@0.1.0",
+ "description": "Fetch a Mailchimp list member's activity details.\n\nUse this tool to get a detailed record of a member's activities on a specific Mailchimp list, including email opens, link clicks, and unsubscribe actions.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list. Required to retrieve the member's activity data.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address, or the email address itself, or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_response",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response, use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of activity records to return. Default is 10, max is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "activity_type_filters",
+ "required": false,
+ "description": "Comma-separated list of activity types to filter by, such as 'open', 'bounce', or 'click'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of activity filters that correspond to a set of activity types, e.g \"?activity_filters=open,bounce,click\"."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "activity_filters"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembersIdActivityFeed'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/activity-feed",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_response",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "activity_filters",
+ "tool_parameter_name": "activity_type_filters",
+ "description": "A comma-separated list of activity filters that correspond to a set of activity types, e.g \"?activity_filters=open,bounce,click\".",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of activity filters that correspond to a set of activity types, e.g \"?activity_filters=open,bounce,click\"."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberGoalEvents.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberGoalEvents.json
new file mode 100644
index 00000000..db371a73
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberGoalEvents.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetMemberGoalEvents",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMemberGoalEvents@0.1.0",
+ "description": "Retrieve the last 50 goal events for a specific list member.\n\nUse this tool to get the most recent goal achievement events for a member within a particular Mailchimp list. This can be useful for tracking user engagement and performance metrics.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list. Required for fetching member goal events.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the member's email, email address, or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of specific fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembersIdGoals'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/goals",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberNotes.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberNotes.json
new file mode 100644
index 00000000..47cffc3d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMemberNotes.json
@@ -0,0 +1,338 @@
+{
+ "name": "GetMemberNotes",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMemberNotes@0.1.0",
+ "description": "Retrieve recent notes for a Mailchimp list member.\n\nUse this tool to access the most recent notes associated with a specific member of a Mailchimp list, identified by their subscriber hash.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID of the Mailchimp list to retrieve notes for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "subscriber_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. Used to identify the list member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "sort_notes_by_field",
+ "required": false,
+ "description": "Specify the field to sort the notes by, e.g., 'created_at' or 'updated_at'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns notes sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "order_direction",
+ "required": false,
+ "description": "Specifies the order direction for sorted note results. Accepts 'asc' or 'desc'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of member notes to return, between 1 and 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembersIdNotes'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/notes",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_notes_by_field",
+ "description": "Returns notes sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns notes sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMergeFieldInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMergeFieldInfo.json
new file mode 100644
index 00000000..972dcfe4
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMergeFieldInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetMergeFieldInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMergeFieldInfo@0.1.0",
+ "description": "Retrieve information about a specific merge field.\n\nUse this tool to obtain detailed information about a specific merge field in a Mailchimp list. It's useful for accessing customized data fields associated with members of email lists.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID of the Mailchimp list to get merge field information from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "merge_field_id",
+ "required": true,
+ "description": "The unique identifier for the merge field in the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "merge_id"
+ },
+ {
+ "name": "exclude_merge_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Specify the fields to return, using comma-separated dot notation for nested fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMergeFieldsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/merge-fields/{merge_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_merge_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "merge_id",
+ "tool_parameter_name": "merge_field_id",
+ "description": "The id for the merge field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMonthlyListGrowthSummary.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMonthlyListGrowthSummary.json
new file mode 100644
index 00000000..5fb17ff0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetMonthlyListGrowthSummary.json
@@ -0,0 +1,305 @@
+{
+ "name": "GetMonthlyListGrowthSummary",
+ "fully_qualified_name": "MailchimpTransactionApi.GetMonthlyListGrowthSummary@0.1.0",
+ "description": "Retrieve monthly summary of a list's growth activity.\n\nUse this tool to get a detailed month-by-month summary of the growth activity for a specific list in Mailchimp. It provides insights into subscriber count changes over time.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the specific list in Mailchimp. Required for retrieving growth activity.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, with a default of 10 and a maximum of 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "sort_results_by_field",
+ "required": false,
+ "description": "Specify the field by which results should be sorted. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_order_direction",
+ "required": false,
+ "description": "Determines the sorting order for the results, either ascending or descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdGrowthHistory'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/growth-history",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_to_return",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_results_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_order_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetOrderLineItems.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetOrderLineItems.json
new file mode 100644
index 00000000..07d11a2f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetOrderLineItems.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetOrderLineItems",
+ "fully_qualified_name": "MailchimpTransactionApi.GetOrderLineItems@0.1.0",
+ "description": "Retrieve information about order line items.\n\nUse this tool to get detailed information about line items in a specific order from an e-commerce store linked to Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the store. Used to specify which store's order line items to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order within the store. Required to specify which order's line items to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of line item records to return, between 1 and 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination, default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdOrdersIdLines'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}/lines",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductImageInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductImageInfo.json
new file mode 100644
index 00000000..2d9b787d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductImageInfo.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetProductImageInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetProductImageInfo@0.1.0",
+ "description": "Retrieve details of a specific product image in an eCommerce store.\n\nUse this tool to get information about a specific image associated with a product in an eCommerce store. Ideal for obtaining image metadata or details for display or analysis purposes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier of the store. Used to specify the store whose product image information is to be retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": true,
+ "description": "The unique identifier for the product in the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "required": true,
+ "description": "The unique identifier for the product image to retrieve details about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "image_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdImagesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "image_id",
+ "tool_parameter_name": "product_image_id",
+ "description": "The id for the product image.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductImages.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductImages.json
new file mode 100644
index 00000000..ac287fbd
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductImages.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetProductImages",
+ "fully_qualified_name": "MailchimpTransactionApi.GetProductImages@0.1.0",
+ "description": "Retrieve information about a product's images.\n\nCall this tool to obtain details about images associated with a specific product in an e-commerce store.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the e-commerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": true,
+ "description": "The unique identifier for a product in a specific store. Required to retrieve product image details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of product image records to return, ranging from 1 to 1000. Defaults to 10 if not provided.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdImages'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/images",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductInfo.json
new file mode 100644
index 00000000..2b0415b1
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetProductInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetProductInfo@0.1.0",
+ "description": "Get information about a specific product from an ecommerce store.\n\nUse this tool to retrieve detailed information on a specific product from a specified ecommerce store, identified by store and product IDs.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store from which to retrieve the product information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The unique identifier for the product within a store. This ID is required to fetch specific product details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated fields to exclude in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdProductsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductVariantInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductVariantInfo.json
new file mode 100644
index 00000000..f1dafd9e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductVariantInfo.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetProductVariantInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetProductVariantInfo@0.1.0",
+ "description": "Retrieve information on a specific product variant.\n\nCall this tool to get detailed information about a specific product variant in an e-commerce store. Useful for fetching variant details such as size, color, price, or stock status from a specified store's product.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the store to query the product variant details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The ID of the product in the specified store. Required to retrieve variant details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "required": true,
+ "description": "The unique identifier for the product variant in the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "variant_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of product variant fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude in the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdVariantsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "variant_id",
+ "tool_parameter_name": "product_variant_id",
+ "description": "The id for the product variant.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductVariantsInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductVariantsInfo.json
new file mode 100644
index 00000000..65b7cf79
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetProductVariantsInfo.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetProductVariantsInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetProductVariantsInfo@0.1.0",
+ "description": "Retrieve information on product variants from a store.\n\nUse this tool to obtain detailed information about the variants of a specific product in an e-commerce store. Ideal for cases where users need to know different versions or options available for a product.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the store. Required to fetch product variant data.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": true,
+ "description": "The unique identifier for the product within the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Specify fields to exclude using a comma-separated list. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of product variant records to return, default is 10, max is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdVariants'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/variants",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetPromoCodeInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetPromoCodeInfo.json
new file mode 100644
index 00000000..5e46a591
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetPromoCodeInfo.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetPromoCodeInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetPromoCodeInfo@0.1.0",
+ "description": "Retrieve details of a specific promo code.\n\nUse this tool to get detailed information about a specific promo code associated with a particular store in the Mailchimp Marketing service.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the store. Required to specify which store's promo code information to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "required": true,
+ "description": "The unique identifier for the promo rule of a store. This is required to fetch specific promo code information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_id",
+ "required": true,
+ "description": "The unique identifier for the promo code associated with a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_code_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdPromocodesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_id",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_code_id",
+ "tool_parameter_name": "promo_code_id",
+ "description": "The id for the promo code of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetPromoRuleInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetPromoRuleInfo.json
new file mode 100644
index 00000000..9cbace91
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetPromoRuleInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetPromoRuleInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetPromoRuleInfo@0.1.0",
+ "description": "Retrieve information about a specific promo rule in an ecommerce store.\n\n",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store. Required to fetch promo rule details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_id",
+ "required": true,
+ "description": "The unique identifier for the promo rule in the store. Required to fetch specific rule details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "A comma-separated list of specific fields to return using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the promo rule data. Use dot notation to reference sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdPromorulesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_id",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetRemovedAutomationSubscribers.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetRemovedAutomationSubscribers.json
new file mode 100644
index 00000000..3dfe7d31
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetRemovedAutomationSubscribers.json
@@ -0,0 +1,107 @@
+{
+ "name": "GetRemovedAutomationSubscribers",
+ "fully_qualified_name": "MailchimpTransactionApi.GetRemovedAutomationSubscribers@0.1.0",
+ "description": "Get details on subscribers removed from automation workflows.\n\nUse this tool to obtain information about subscribers who have been removed from a specific classic automation workflow in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique ID for identifying the specific automation workflow in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomationsIdRemovedSubscribers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/removed-subscribers",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetRemovedSubscriberInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetRemovedSubscriberInfo.json
new file mode 100644
index 00000000..b07d8e74
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetRemovedSubscriberInfo.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetRemovedSubscriberInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetRemovedSubscriberInfo@0.1.0",
+ "description": "Retrieve details about a removed subscriber from automation.\n\nUse this tool to get specific information about a subscriber who was removed from a classic Mailchimp automation workflow by providing the workflow ID and subscriber hash.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp automation workflow. It is required to identify from which workflow the subscriber was removed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "subscriber_hash",
+ "required": true,
+ "description": "MD5 hash of the lowercase version of the subscriber's email address to identify the removed member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAutomationsIdRemovedSubscribersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/removed-subscribers/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSegmentInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSegmentInfo.json
new file mode 100644
index 00000000..b1539cfc
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSegmentInfo.json
@@ -0,0 +1,305 @@
+{
+ "name": "GetSegmentInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSegmentInfo@0.1.0",
+ "description": "Retrieve information about a specific Mailchimp segment.\n\nUse this tool to get detailed information about a specific segment in a Mailchimp list by providing the list and segment IDs.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to fetch segment information from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_id",
+ "required": true,
+ "description": "Provide the unique ID for the segment you want information on.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "segment_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "include_cleaned_members",
+ "required": false,
+ "description": "Set to 'true' to include cleaned members in the response. Cleaned members are those deleted due to bounce or other delivery issues.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_cleaned"
+ },
+ {
+ "name": "include_transactional_members",
+ "required": false,
+ "description": "Set to 'true' to include transactional members in the response.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_transactional"
+ },
+ {
+ "name": "include_unsubscribed_members",
+ "required": false,
+ "description": "Set to 'true' to include unsubscribed members in the response.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_unsubscribed"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdSegmentsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments/{segment_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_cleaned",
+ "tool_parameter_name": "include_cleaned_members",
+ "description": "Include cleaned members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_transactional",
+ "tool_parameter_name": "include_transactional_members",
+ "description": "Include transactional members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_unsubscribed",
+ "tool_parameter_name": "include_unsubscribed_members",
+ "description": "Include unsubscribed members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "segment_id",
+ "tool_parameter_name": "segment_id",
+ "description": "The unique id for the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSegmentMembersInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSegmentMembersInfo.json
new file mode 100644
index 00000000..4b40d0ed
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSegmentMembersInfo.json
@@ -0,0 +1,371 @@
+{
+ "name": "GetSegmentMembersInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSegmentMembersInfo@0.1.0",
+ "description": "Get information about members in a saved segment.\n\nUse this tool to retrieve information about members within a specified segment. It is useful when you need details on who is part of a particular saved segment in a mailing list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_identifier",
+ "required": true,
+ "description": "The unique ID representing the mailing list from which the segment members will be retrieved. This ID is required to specify the context of the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "required": true,
+ "description": "The unique ID for the segment to retrieve members from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "segment_id"
+ },
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "Comma-separated list of specific fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "The number of records to return. Default is 10; maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination purposes. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "include_cleaned_members",
+ "required": false,
+ "description": "Specify 'true' to include cleaned (invalid or bounced) members in the response. Otherwise, specify 'false'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_cleaned"
+ },
+ {
+ "name": "include_transactional_members",
+ "required": false,
+ "description": "Set to true to include transactional members in the response.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_transactional"
+ },
+ {
+ "name": "include_unsubscribed_members",
+ "required": false,
+ "description": "Specify 'true' to include unsubscribed members in the response, 'false' to exclude them.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_unsubscribed"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdSegmentsIdMembers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments/{segment_id}/members",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_cleaned",
+ "tool_parameter_name": "include_cleaned_members",
+ "description": "Include cleaned members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include cleaned members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_transactional",
+ "tool_parameter_name": "include_transactional_members",
+ "description": "Include transactional members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include transactional members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_unsubscribed",
+ "tool_parameter_name": "include_unsubscribed_members",
+ "description": "Include unsubscribed members in response",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Include unsubscribed members in response"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_identifier",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "segment_id",
+ "tool_parameter_name": "segment_unique_id",
+ "description": "The unique id for the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSpecificOrderInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSpecificOrderInfo.json
new file mode 100644
index 00000000..baff6300
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSpecificOrderInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetSpecificOrderInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSpecificOrderInfo@0.1.0",
+ "description": "Retrieve information about a specific order in a store.\n\nUse this tool to obtain details about a specific order from an e-commerce store. It should be called when needing to access order information using the order ID and store ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store. Required to fetch order information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order in a store. It is required to retrieve specific order details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdOrdersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSpecificOrderLineItemInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSpecificOrderLineItemInfo.json
new file mode 100644
index 00000000..852472d4
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSpecificOrderLineItemInfo.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetSpecificOrderLineItemInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSpecificOrderLineItemInfo@0.1.0",
+ "description": "Get details about a specific order line item.\n\nUse this tool to retrieve information about a specific order line item from an e-commerce store in Mailchimp. Useful for obtaining order details such as product name, quantity, price, etc., for a particular order line.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store. This is required to specify which store's data to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order within a store. Required to fetch details of the specific order line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "order_line_item_id",
+ "required": true,
+ "description": "The unique identifier for the line item in the order.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "line_id"
+ },
+ {
+ "name": "return_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of specific fields to exclude from the response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdOrdersIdLinesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "line_id",
+ "tool_parameter_name": "order_line_item_id",
+ "description": "The id for the line item of an order.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreCartsInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreCartsInfo.json
new file mode 100644
index 00000000..cc6819ae
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreCartsInfo.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetStoreCartsInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetStoreCartsInfo@0.1.0",
+ "description": "Retrieve information about a store's ecommerce carts.\n\nUse this tool to get detailed information about carts within a specific store in the ecommerce system. Ideal for understanding cart statuses, contents, and customer interactions.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store to retrieve cart information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for nested objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, up to a maximum of 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdCarts'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreCustomersInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreCustomersInfo.json
new file mode 100644
index 00000000..1ed8cb88
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreCustomersInfo.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetStoreCustomersInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetStoreCustomersInfo@0.1.0",
+ "description": "Retrieve information about a store's customers.\n\nUse this tool to get detailed information about the customers of a specific e-commerce store. Ideal for accessing customer data to analyze or manage store interactions.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the e-commerce store to retrieve customer information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated fields to exclude in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of customer records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "filter_by_email_address",
+ "required": false,
+ "description": "Restrict the response to customers matching the specified email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to customers with the email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "email_address"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdCustomers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/customers",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "email_address",
+ "tool_parameter_name": "filter_by_email_address",
+ "description": "Restrict the response to customers with the email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to customers with the email address."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreOrdersInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreOrdersInfo.json
new file mode 100644
index 00000000..a9e9a81d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreOrdersInfo.json
@@ -0,0 +1,371 @@
+{
+ "name": "GetStoreOrdersInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetStoreOrdersInfo@0.1.0",
+ "description": "Retrieve information about a store's orders via Mailchimp.\n\nUse this tool to get detailed information about the orders of a specified store from Mailchimp's ecommerce platform.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store whose orders information is to be retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_order_fields",
+ "required": false,
+ "description": "Comma-separated list of order fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return, between 1 and 1000, with a default of 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "filter_by_customer_id",
+ "required": false,
+ "description": "Restrict results to orders made by a specific customer using their unique customer ID.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders made by a specific customer."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "customer_id"
+ },
+ {
+ "name": "restrict_to_outreach_orders",
+ "required": false,
+ "description": "Indicate whether to restrict results to orders with an outreach attached, such as an email campaign or Facebook ad. Accepts 'true' or 'false'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "has_outreach"
+ },
+ {
+ "name": "restrict_to_campaign_id",
+ "required": false,
+ "description": "Restrict results to orders with the specified `campaign_id`.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `campaign_id` value."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "specific_outreach_id",
+ "required": false,
+ "description": "Restrict results to orders with a specific outreach ID.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `outreach_id` value."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "outreach_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdOrders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_order_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "customer_id",
+ "tool_parameter_name": "filter_by_customer_id",
+ "description": "Restrict results to orders made by a specific customer.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders made by a specific customer."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "has_outreach",
+ "tool_parameter_name": "restrict_to_outreach_orders",
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders that have an outreach attached. For example, an email campaign or Facebook ad."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "restrict_to_campaign_id",
+ "description": "Restrict results to orders with a specific `campaign_id` value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `campaign_id` value."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "outreach_id",
+ "tool_parameter_name": "specific_outreach_id",
+ "description": "Restrict results to orders with a specific `outreach_id` value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to orders with a specific `outreach_id` value."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreProductsInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreProductsInfo.json
new file mode 100644
index 00000000..7e17ba1c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStoreProductsInfo.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetStoreProductsInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetStoreProductsInfo@0.1.0",
+ "description": "Get information about a store's products from Mailchimp.\n\nThis tool retrieves detailed information about products in a specified ecommerce store using Mailchimp's marketing API. It should be called when information about a store's inventory is needed.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store whose product information is being retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "return_fields_list",
+ "required": false,
+ "description": "A comma-separated list of specific fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of product records to return, from 1 to 1000. The default value is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdProducts'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_fields_list",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStorePromoCodes.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStorePromoCodes.json
new file mode 100644
index 00000000..7046e212
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStorePromoCodes.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetStorePromoCodes",
+ "fully_qualified_name": "MailchimpTransactionApi.GetStorePromoCodes@0.1.0",
+ "description": "Retrieve information about promo codes for a specific store.\n\nUse this tool to get detailed information about promo codes for a given store, which can help in managing promotions and discounts.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "promo_rule_id",
+ "required": true,
+ "description": "The unique identifier for the promotion rule of a store to fetch promo codes.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ },
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store to get promo codes from. Required to specify which store's promo codes to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Specify a comma-separated list of fields to exclude from the returned data. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "The number of promo code records to return. Default is 10, with a maximum of 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination purposes. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdPromocodes'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_id",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStorePromoRules.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStorePromoRules.json
new file mode 100644
index 00000000..8ea26b01
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetStorePromoRules.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetStorePromoRules",
+ "fully_qualified_name": "MailchimpTransactionApi.GetStorePromoRules@0.1.0",
+ "description": "Retrieve promo rules for a specified store.\n\nUse this tool to get detailed information about the promotional rules set up for a specific e-commerce store using its ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store to retrieve promo rules from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "Specify the number of promo rule records to return. Default is 10, maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination, with a default value of 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdPromorules'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSubscriberClickDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSubscriberClickDetails.json
new file mode 100644
index 00000000..e000c3b0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSubscriberClickDetails.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetSubscriberClickDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSubscriberClickDetails@0.1.0",
+ "description": "Retrieve details of a subscriber's link click in a campaign.\n\nThis tool fetches information about a specific subscriber who clicked a link within a specific campaign in Mailchimp. It should be called when you need to analyze subscriber engagement by retrieving who clicked on which links in a campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the campaign to get subscriber click details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "link_identifier",
+ "required": true,
+ "description": "The unique ID for the link clicked within a campaign. Use to specify which link's click details to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "link_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the subscriber's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of specific fields to include in the response. Use dot notation for nested objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the result, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdClickDetailsIdMembersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/click-details/{link_id}/members/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "link_id",
+ "tool_parameter_name": "link_identifier",
+ "description": "The id for the link.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the link."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_email_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyDetails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyDetails.json
new file mode 100644
index 00000000..e5a76a9f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyDetails.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetSurveyDetails",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyDetails@0.1.0",
+ "description": "Retrieve details about a specific Mailchimp survey.\n\nUse this tool to gather detailed information about a particular survey associated with a specific list in Mailchimp. It is helpful for understanding survey content, status, and related data.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list associated with the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "survey_id",
+ "required": true,
+ "description": "The unique ID of the survey to retrieve details for in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdSurveysId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/surveys/{survey_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_id",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionAnswers.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionAnswers.json
new file mode 100644
index 00000000..2b2ae3e1
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionAnswers.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetSurveyQuestionAnswers",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyQuestionAnswers@0.1.0",
+ "description": "Retrieve answers for a specific survey question.\n\nUse this tool to get answers for a particular question in a given survey. Useful for analyzing survey responses to specific questions within Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "survey_identifier",
+ "required": true,
+ "description": "The unique identifier for the survey whose question answers are being retrieved.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ },
+ {
+ "name": "survey_question_id",
+ "required": true,
+ "description": "The unique identifier for the survey question to retrieve answers from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey question."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "question_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Specify fields to exclude from the response using a comma-separated list. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "filter_by_respondent_familiarity",
+ "required": false,
+ "description": "Filter survey responses based on the familiarity level of the respondents. Accepts a string value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter survey responses by familiarity of the respondents."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "respondent_familiarity_is"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingSurveysIdQuestionsIdAnswers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/surveys/{survey_id}/questions/{question_id}/answers",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "respondent_familiarity_is",
+ "tool_parameter_name": "filter_by_respondent_familiarity",
+ "description": "Filter survey responses by familiarity of the respondents.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter survey responses by familiarity of the respondents."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_identifier",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "question_id",
+ "tool_parameter_name": "survey_question_id",
+ "description": "The ID of the survey question.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey question."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionReport.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionReport.json
new file mode 100644
index 00000000..79de108f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionReport.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetSurveyQuestionReport",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyQuestionReport@0.1.0",
+ "description": "Get report data for a specific survey question.\n\nUse this tool to retrieve detailed report information for a specific question in a survey. Useful for analyzing responses and performance of survey questions.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "survey_id",
+ "required": true,
+ "description": "The unique identifier for the survey. Required to retrieve specific survey question reports.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ },
+ {
+ "name": "survey_question_id",
+ "required": true,
+ "description": "The unique ID of the survey question to get the report for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey question."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "question_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the survey question report, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingSurveysIdQuestionsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/surveys/{survey_id}/questions/{question_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_id",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "question_id",
+ "tool_parameter_name": "survey_question_id",
+ "description": "The ID of the survey question.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey question."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionReports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionReports.json
new file mode 100644
index 00000000..fd369047
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyQuestionReports.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetSurveyQuestionReports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyQuestionReports@0.1.0",
+ "description": "Retrieve reports for survey questions by survey ID.\n\nUse this tool to obtain data regarding the responses to each question within a specific survey. Ideal for analyzing survey results and gaining insights.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "survey_identifier",
+ "required": true,
+ "description": "The unique identifier for the survey to retrieve question reports.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to return for survey questions. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_from_report",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the survey report. Use dot notation for nested fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingSurveysIdQuestions'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/surveys/{survey_id}/questions",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_from_report",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_identifier",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyReport.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyReport.json
new file mode 100644
index 00000000..96299b41
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyReport.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetSurveyReport",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyReport@0.1.0",
+ "description": "Retrieve report details for a specific survey.\n\nCall this tool to get comprehensive report details for a specified survey. Use this to analyze survey responses and results.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "survey_id",
+ "required": true,
+ "description": "The unique ID of the survey to retrieve the report for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the survey report. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the survey report. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingSurveysId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/surveys/{survey_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_id",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyReports.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyReports.json
new file mode 100644
index 00000000..c64f13f3
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyReports.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetSurveyReports",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyReports@0.1.0",
+ "description": "Retrieve detailed reports for marketing surveys.\n\nUse this tool to obtain detailed reports and insights from marketing surveys. Ideal for analyzing survey results and performance metrics.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from survey reports. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records",
+ "required": false,
+ "description": "The number of survey report records to return. Defaults to 10. Max value is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination, default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingSurveys'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/surveys",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyResponse.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyResponse.json
new file mode 100644
index 00000000..848aff68
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyResponse.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetSurveyResponse",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyResponse@0.1.0",
+ "description": "Retrieve details of a specific survey response.\n\nCall this tool to get detailed information of a particular survey response using its survey and response IDs.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "survey_id",
+ "required": true,
+ "description": "The ID of the survey to retrieve the response from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ },
+ {
+ "name": "survey_response_id",
+ "required": true,
+ "description": "The ID of the specific survey response to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey response."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "response_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingSurveysIdResponsesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/surveys/{survey_id}/responses/{response_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_id",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "response_id",
+ "tool_parameter_name": "survey_response_id",
+ "description": "The ID of the survey response.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey response."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyResponses.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyResponses.json
new file mode 100644
index 00000000..34d1ddb2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetSurveyResponses.json
@@ -0,0 +1,272 @@
+{
+ "name": "GetSurveyResponses",
+ "fully_qualified_name": "MailchimpTransactionApi.GetSurveyResponses@0.1.0",
+ "description": "Retrieve responses to a specific survey.\n\nUse this tool to obtain responses from a specific survey when you have the survey ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "survey_id",
+ "required": true,
+ "description": "The unique identifier for the survey to retrieve responses for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ },
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_survey_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from survey responses. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "question_id",
+ "required": false,
+ "description": "The ID of the question that was answered to filter responses.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the question that was answered."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "answered_question"
+ },
+ {
+ "name": "chosen_answer_id",
+ "required": false,
+ "description": "The ID of the selected answer option to filter survey responses.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the option chosen to filter responses on."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "chose_answer"
+ },
+ {
+ "name": "filter_by_respondent_familiarity",
+ "required": false,
+ "description": "Filter survey responses by respondents' familiarity level. Provide a familiarity string to narrow down results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter survey responses by familiarity of the respondents."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "respondent_familiarity_is"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportingSurveysIdResponses'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reporting/surveys/{survey_id}/responses",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_survey_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "answered_question",
+ "tool_parameter_name": "question_id",
+ "description": "The ID of the question that was answered.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the question that was answered."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "chose_answer",
+ "tool_parameter_name": "chosen_answer_id",
+ "description": "The ID of the option chosen to filter responses on.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the option chosen to filter responses on."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "respondent_familiarity_is",
+ "tool_parameter_name": "filter_by_respondent_familiarity",
+ "description": "Filter survey responses by familiarity of the respondents.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Filter survey responses by familiarity of the respondents."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_id",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTemplateEditableSections.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTemplateEditableSections.json
new file mode 100644
index 00000000..ea23c298
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTemplateEditableSections.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetTemplateEditableSections",
+ "fully_qualified_name": "MailchimpTransactionApi.GetTemplateEditableSections@0.1.0",
+ "description": "Retrieve editable sections and default content of a template.\n\nUse this tool to get the sections you can edit in a Mailchimp template, along with each section's default content. It is helpful for understanding which parts of a template can be customized.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp template to retrieve editable sections.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "template_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getTemplatesIdDefaultContent'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/templates/{template_id}/default-content",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "template_id",
+ "tool_parameter_name": "template_unique_id",
+ "description": "The unique id for the template.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTemplateFolderInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTemplateFolderInfo.json
new file mode 100644
index 00000000..d0edd9e2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTemplateFolderInfo.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetTemplateFolderInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetTemplateFolderInfo@0.1.0",
+ "description": "Retrieve details of a specific template folder.\n\nUse this tool to get information about a particular folder used for organizing templates in Mailchimp. This is helpful when you need to know more about how your templates are categorized.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_folder_id",
+ "required": true,
+ "description": "The unique ID for the template folder to retrieve information about.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to return for the folder. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getTemplateFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/template-folders/{folder_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "template_folder_id",
+ "description": "The unique id for the template folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTopEmailClients.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTopEmailClients.json
new file mode 100644
index 00000000..e312e419
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetTopEmailClients.json
@@ -0,0 +1,173 @@
+{
+ "name": "GetTopEmailClients",
+ "fully_qualified_name": "MailchimpTransactionApi.GetTopEmailClients@0.1.0",
+ "description": "Retrieve the top email clients from a specific list.\n\nThis tool retrieves a list of the top email clients based on user-agent strings for a specified list ID. It should be called when there's a need to analyze or report on the most popular email clients among subscribers of a particular list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the email list to retrieve client data from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdClients'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/clients",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetUnsubscribedCampaignMembers.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetUnsubscribedCampaignMembers.json
new file mode 100644
index 00000000..f534294f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetUnsubscribedCampaignMembers.json
@@ -0,0 +1,239 @@
+{
+ "name": "GetUnsubscribedCampaignMembers",
+ "fully_qualified_name": "MailchimpTransactionApi.GetUnsubscribedCampaignMembers@0.1.0",
+ "description": "Get details of members unsubscribed from a specific campaign.\n\nUse this tool to retrieve detailed information about members who have unsubscribed from a specified marketing campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the marketing campaign to retrieve unsubscribed members information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of records to return. Default is 10 and maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination, with a default value of 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdUnsubscribed'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/unsubscribed",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetUnsubscribedMemberInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetUnsubscribedMemberInfo.json
new file mode 100644
index 00000000..edb36e88
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetUnsubscribedMemberInfo.json
@@ -0,0 +1,206 @@
+{
+ "name": "GetUnsubscribedMemberInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetUnsubscribedMemberInfo@0.1.0",
+ "description": "Retrieve info on an unsubscribed list member from a campaign.\n\nUse this tool to get information about a specific list member who has unsubscribed from a campaign in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address for identification.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "include_fields",
+ "required": false,
+ "description": "Specify which fields to return, using a comma-separated list with dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdUnsubscribedId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/unsubscribed/{subscriber_hash}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "include_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_email_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetVerifiedMailchimpDomains.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetVerifiedMailchimpDomains.json
new file mode 100644
index 00000000..c670b466
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetVerifiedMailchimpDomains.json
@@ -0,0 +1,72 @@
+{
+ "name": "GetVerifiedMailchimpDomains",
+ "fully_qualified_name": "MailchimpTransactionApi.GetVerifiedMailchimpDomains@0.1.0",
+ "description": "Retrieve all verified sending domains for a Mailchimp account.\n\nThis tool retrieves the list of all sending domains verified on a Mailchimp account. It should be called when users want to view their registered sending domains.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": []
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getVerifiedDomains'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/verified-domains",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetWebhookInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetWebhookInfo.json
new file mode 100644
index 00000000..058cdc58
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/GetWebhookInfo.json
@@ -0,0 +1,140 @@
+{
+ "name": "GetWebhookInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.GetWebhookInfo@0.1.0",
+ "description": "Retrieve details of a specific Mailchimp webhook.\n\nUse this tool to get detailed information about a specific webhook in your Mailchimp list by providing the list and webhook IDs.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to retrieve the webhook information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "webhook_id",
+ "required": true,
+ "description": "Provide the unique ID of the webhook to retrieve its information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "webhook_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdWebhooksId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/webhooks/{webhook_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "webhook_id",
+ "tool_parameter_name": "webhook_id",
+ "description": "The webhook's id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ListFileManagerFolders.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ListFileManagerFolders.json
new file mode 100644
index 00000000..cff89171
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ListFileManagerFolders.json
@@ -0,0 +1,305 @@
+{
+ "name": "ListFileManagerFolders",
+ "fully_qualified_name": "MailchimpTransactionApi.ListFileManagerFolders@0.1.0",
+ "description": "Retrieve a list of folders from the File Manager.\n\nThis tool is used to obtain a list of all folders available in the File Manager, which is helpful for organizing and accessing files efficiently.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specify the number of folder records to return, from 1 to 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "Number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "created_by_user",
+ "required": false,
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_by"
+ },
+ {
+ "name": "restrict_to_files_created_before",
+ "required": false,
+ "description": "Restrict the response to files created before the specified date using ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_created_at"
+ },
+ {
+ "name": "created_after_date",
+ "required": false,
+ "description": "Restrict the response to files created after the specified date in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_created_at"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getFileManagerFolders'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/folders",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_by",
+ "tool_parameter_name": "created_by_user",
+ "description": "The Mailchimp account user who created the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp account user who created the File Manager file."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_created_at",
+ "tool_parameter_name": "restrict_to_files_created_before",
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_created_at",
+ "tool_parameter_name": "created_after_date",
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict the response to files created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ManageMailchimpListMembers.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ManageMailchimpListMembers.json
new file mode 100644
index 00000000..2286bdad
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ManageMailchimpListMembers.json
@@ -0,0 +1,496 @@
+{
+ "name": "ManageMailchimpListMembers",
+ "fully_qualified_name": "MailchimpTransactionApi.ManageMailchimpListMembers@0.1.0",
+ "description": "Batch subscribe or unsubscribe members in a Mailchimp list.\n\nUse this tool to add or remove multiple members from a specific Mailchimp list. Ideal for managing subscriber lists efficiently.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID for the specific Mailchimp list to manage.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "batch_manage_members_data",
+ "required": true,
+ "description": "JSON array of subscriber objects to add or update, each including email, status, merge fields, etc. Up to 500 members per request.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "members": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "description": "An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call."
+ },
+ "sync_tags": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether this batch operation will replace all existing tags with tags in request."
+ },
+ "update_existing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether this batch operation will change existing members' subscription status."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ },
+ {
+ "name": "allow_incomplete_merge_fields",
+ "required": false,
+ "description": "Allows member data without required merge fields if set to true. Defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "skip_merge_validation"
+ },
+ {
+ "name": "ignore_duplicate_members",
+ "required": false,
+ "description": "Set to true to ignore duplicate entries in the batch request, saving the first occurrence.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_duplicate_check is true, we will ignore duplicates sent in the request when using the batch sub/unsub on the lists endpoint. The status of the first appearance in the request will be saved. This defaults to false."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "skip_duplicate_check"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "skip_merge_validation",
+ "tool_parameter_name": "allow_incomplete_merge_fields",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "skip_duplicate_check",
+ "tool_parameter_name": "ignore_duplicate_members",
+ "description": "If skip_duplicate_check is true, we will ignore duplicates sent in the request when using the batch sub/unsub on the lists endpoint. The status of the first appearance in the request will be saved. This defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_duplicate_check is true, we will ignore duplicates sent in the request when using the batch sub/unsub on the lists endpoint. The status of the first appearance in the request will be saved. This defaults to false."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "batch_manage_members_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "members": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending",
+ "transactional"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "description": "An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call."
+ },
+ "sync_tags": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether this batch operation will replace all existing tags with tags in request."
+ },
+ "update_existing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether this batch operation will change existing members' subscription status."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Members to Subscribe/Unsubscribe to/from a List in batch\",\n \"description\": \"Members to subscribe to or unsubscribe from a list.\",\n \"required\": [\n \"members\"\n ],\n \"properties\": {\n \"members\": {\n \"type\": \"array\",\n \"title\": \"List Members\",\n \"description\": \"An array of objects, each representing an email address and the subscription status for a specific list. Up to 500 members may be added or updated with each API call.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\",\n \"transactional\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n },\n \"sync_tags\": {\n \"type\": \"boolean\",\n \"title\": \"Sync Tags\",\n \"description\": \"Whether this batch operation will replace all existing tags with tags in request.\"\n },\n \"update_existing\": {\n \"type\": \"boolean\",\n \"title\": \"Update Existing Members\",\n \"description\": \"Whether this batch operation will change existing members' subscription status.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ModifyProductVariant.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ModifyProductVariant.json
new file mode 100644
index 00000000..d6e8d59c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ModifyProductVariant.json
@@ -0,0 +1,336 @@
+{
+ "name": "ModifyProductVariant",
+ "fully_qualified_name": "MailchimpTransactionApi.ModifyProductVariant@0.1.0",
+ "description": "Update a product variant in an e-commerce store.\n\nUse this tool to update the details of a specific product variant in a designated e-commerce store. This is useful for changing attributes of a variant, such as pricing, stock level, or other details.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "A unique identifier for the store where the product variant will be updated. Must be a string.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": true,
+ "description": "The unique identifier for a product in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "required": true,
+ "description": "The ID for the product variant to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "variant_id"
+ },
+ {
+ "name": "product_variant_details",
+ "required": true,
+ "description": "JSON object containing product variant details to be updated, such as title, URL, SKU, price, inventory quantity, image URL, backorders, and visibility.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdProductsIdVariantsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "variant_id",
+ "tool_parameter_name": "product_variant_id",
+ "description": "The id for the product variant.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "product_variant_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseAutomatedEmail.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseAutomatedEmail.json
new file mode 100644
index 00000000..31a220ca
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseAutomatedEmail.json
@@ -0,0 +1,140 @@
+{
+ "name": "PauseAutomatedEmail",
+ "fully_qualified_name": "MailchimpTransactionApi.PauseAutomatedEmail@0.1.0",
+ "description": "Pause an automated email in a Mailchimp workflow.\n\nUse this tool to pause a specific automated email within a Mailchimp automation workflow. This can be useful when you need to temporarily stop sending an ongoing sequence.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp automation workflow to pause.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "required": true,
+ "description": "The unique ID for the automation workflow email to be paused.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAutomationsIdEmailsIdActionsPause'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}/actions/pause",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "automation_workflow_email_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseAutomationEmails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseAutomationEmails.json
new file mode 100644
index 00000000..75f2ee4b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseAutomationEmails.json
@@ -0,0 +1,107 @@
+{
+ "name": "PauseAutomationEmails",
+ "fully_qualified_name": "MailchimpTransactionApi.PauseAutomationEmails@0.1.0",
+ "description": "Pause emails in a specific automation workflow.\n\nUse this tool to pause all emails in a specified classic automation workflow in Mailchimp. Ideal for temporarily halting scheduled email deliveries.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the specific automation workflow to be paused.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAutomationsIdActionsPauseAllEmails'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/actions/pause-all-emails",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseRssCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseRssCampaign.json
new file mode 100644
index 00000000..e56d156d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PauseRssCampaign.json
@@ -0,0 +1,107 @@
+{
+ "name": "PauseRssCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.PauseRssCampaign@0.1.0",
+ "description": "Pause an RSS-Driven campaign.\n\nUse this tool to pause an ongoing RSS-Driven campaign in Mailchimp Marketing. It should be called when you need to temporarily stop a campaign without deleting it.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the RSS-Driven campaign you want to pause. It should be a string.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsPause'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/pause",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PublishLandingPage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PublishLandingPage.json
new file mode 100644
index 00000000..65276079
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PublishLandingPage.json
@@ -0,0 +1,107 @@
+{
+ "name": "PublishLandingPage",
+ "fully_qualified_name": "MailchimpTransactionApi.PublishLandingPage@0.1.0",
+ "description": "Publishes a landing page from draft or edited state.\n\nUse this tool to publish a landing page that is currently in draft, unpublished, or has been edited after a previous publication.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "landing_page_id",
+ "required": true,
+ "description": "The unique identifier for the landing page to publish.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "page_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postLandingPageIdActionsPublish'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages/{page_id}/actions/publish",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "page_id",
+ "tool_parameter_name": "landing_page_id",
+ "description": "The unique id for the page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PublishMailchimpSurvey.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PublishMailchimpSurvey.json
new file mode 100644
index 00000000..8ae3ac63
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/PublishMailchimpSurvey.json
@@ -0,0 +1,140 @@
+{
+ "name": "PublishMailchimpSurvey",
+ "fully_qualified_name": "MailchimpTransactionApi.PublishMailchimpSurvey@0.1.0",
+ "description": "Publishes a Mailchimp survey from draft to published status.\n\nUse this tool to publish a Mailchimp survey that is currently in draft, unpublished, or has been edited after previous publication. The tool confirms the survey's new status upon successful publishing.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "mailchimp_list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list associated with the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "survey_id",
+ "required": true,
+ "description": "The unique identifier of the survey to be published. Required for specifying which survey to publish.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdSurveysIdActionsPublish'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/surveys/{survey_id}/actions/publish",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailchimp_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_id",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveBatchWebhook.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveBatchWebhook.json
new file mode 100644
index 00000000..c40c04a6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveBatchWebhook.json
@@ -0,0 +1,107 @@
+{
+ "name": "RemoveBatchWebhook",
+ "fully_qualified_name": "MailchimpTransactionApi.RemoveBatchWebhook@0.1.0",
+ "description": "Remove a batch webhook to stop sending webhooks to a URL.\n\nThis tool deletes a batch webhook identified by its ID, ensuring that webhooks are no longer sent to the specified URL. Use this tool when you need to stop receiving batch webhooks from Mailchimp to a particular endpoint.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "batch_webhook_id",
+ "required": true,
+ "description": "The unique identifier for the batch webhook to remove. Use this ID to specify which webhook should be deleted, stopping any further webhook notifications to the associated URL.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "batch_webhook_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteBatchWebhookId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batch-webhooks/{batch_webhook_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "batch_webhook_id",
+ "tool_parameter_name": "batch_webhook_id",
+ "description": "The unique id for the batch webhook.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveCampaignFeedback.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveCampaignFeedback.json
new file mode 100644
index 00000000..b56cef48
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveCampaignFeedback.json
@@ -0,0 +1,140 @@
+{
+ "name": "RemoveCampaignFeedback",
+ "fully_qualified_name": "MailchimpTransactionApi.RemoveCampaignFeedback@0.1.0",
+ "description": "Remove a specific feedback message from a campaign.\n\nUse this tool to delete a feedback message associated with a specific campaign in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "A unique identifier for the campaign from which you want to remove feedback.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "feedback_message_id",
+ "required": true,
+ "description": "The unique identifier for the feedback message to be removed from the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "feedback_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteCampaignsIdFeedbackId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/feedback/{feedback_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "feedback_id",
+ "tool_parameter_name": "feedback_message_id",
+ "description": "The unique id for the feedback message.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveClassicAutomationEmail.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveClassicAutomationEmail.json
new file mode 100644
index 00000000..1be57494
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveClassicAutomationEmail.json
@@ -0,0 +1,140 @@
+{
+ "name": "RemoveClassicAutomationEmail",
+ "fully_qualified_name": "MailchimpTransactionApi.RemoveClassicAutomationEmail@0.1.0",
+ "description": "Removes a specified classic automation workflow email.\n\nUse this tool to remove a specific classic automation email from a workflow. Note that emails from certain workflow types, such as Abandoned Cart and Product Retargeting, cannot be deleted.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the Automation workflow to target for email removal.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "required": true,
+ "description": "The unique identifier for the specific automation workflow email to be removed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteAutomationsIdEmailsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "automation_workflow_email_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveMailchimpConnectedSite.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveMailchimpConnectedSite.json
new file mode 100644
index 00000000..eca96132
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveMailchimpConnectedSite.json
@@ -0,0 +1,107 @@
+{
+ "name": "RemoveMailchimpConnectedSite",
+ "fully_qualified_name": "MailchimpTransactionApi.RemoveMailchimpConnectedSite@0.1.0",
+ "description": "Remove a connected site from your Mailchimp account.\n\nUse this tool to delete a connected site from your Mailchimp account, removing its integration.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "site_identifier",
+ "required": true,
+ "description": "The unique identifier for the connected site you wish to remove from your Mailchimp account.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "connected_site_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteConnectedSitesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/connected-sites/{connected_site_id}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "connected_site_id",
+ "tool_parameter_name": "site_identifier",
+ "description": "The unique identifier for the site.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveMemberFromMailchimpSegment.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveMemberFromMailchimpSegment.json
new file mode 100644
index 00000000..b20d4086
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveMemberFromMailchimpSegment.json
@@ -0,0 +1,173 @@
+{
+ "name": "RemoveMemberFromMailchimpSegment",
+ "fully_qualified_name": "MailchimpTransactionApi.RemoveMemberFromMailchimpSegment@0.1.0",
+ "description": "Remove a member from a Mailchimp static segment.\n\nUse this tool to delete a member from a specific static segment in Mailchimp. It should be called when you need to manage segment memberships by removing a subscriber.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID of the mailing list from which the member will be removed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp segment from which the member will be removed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "segment_id"
+ },
+ {
+ "name": "email_md5_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'deleteListsIdSegmentsIdMembersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments/{segment_id}/members/{subscriber_hash}",
+ "http_method": "DELETE",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "segment_id",
+ "tool_parameter_name": "segment_unique_id",
+ "description": "The unique id for the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "email_md5_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveSubscriberFromWorkflow.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveSubscriberFromWorkflow.json
new file mode 100644
index 00000000..218c3ec1
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RemoveSubscriberFromWorkflow.json
@@ -0,0 +1,140 @@
+{
+ "name": "RemoveSubscriberFromWorkflow",
+ "fully_qualified_name": "MailchimpTransactionApi.RemoveSubscriberFromWorkflow@0.1.0",
+ "description": "Remove a subscriber from a Mailchimp automation workflow.\n\nThis tool removes a subscriber from a specified Mailchimp classic automation workflow at any point, ensuring they cannot be re-added to the same workflow.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "subscriber_email_address",
+ "required": true,
+ "description": "Email address of the list member to be removed from the workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "email_address"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAutomationsIdRemovedSubscribers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/removed-subscribers",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "email_address",
+ "tool_parameter_name": "subscriber_email_address",
+ "description": "The list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber in Automation Queue\",\n \"description\": \"Information about subscribers in an Automation email queue.\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The list member's email address.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ReplicateCampaignMailchimp.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ReplicateCampaignMailchimp.json
new file mode 100644
index 00000000..6a8b94ee
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ReplicateCampaignMailchimp.json
@@ -0,0 +1,107 @@
+{
+ "name": "ReplicateCampaignMailchimp",
+ "fully_qualified_name": "MailchimpTransactionApi.ReplicateCampaignMailchimp@0.1.0",
+ "description": "Replicate a saved or sent Mailchimp campaign.\n\nThis tool replicates a Mailchimp campaign that is in a saved or sent status. Use it to duplicate existing campaigns for reuse or modification.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to be replicated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsReplicate'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/replicate",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ResendCampaignToSegments.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ResendCampaignToSegments.json
new file mode 100644
index 00000000..b0e8c033
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ResendCampaignToSegments.json
@@ -0,0 +1,150 @@
+{
+ "name": "ResendCampaignToSegments",
+ "fully_qualified_name": "MailchimpTransactionApi.ResendCampaignToSegments@0.1.0",
+ "description": "Resend a campaign to specific segments.\n\nUse this tool to replicate and resend a Mailchimp campaign to segments like non-openers or new subscribers.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique ID for identifying the campaign to replicate and resend.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "resend_shortcut_type",
+ "required": false,
+ "description": "Specify the type of segment to resend the campaign to. Options: 'to_non_openers', 'to_new_subscribers', 'to_non_clickers', 'to_non_purchasers'. Default is 'to_non_openers'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "to_non_openers",
+ "to_new_subscribers",
+ "to_non_clickers",
+ "to_non_purchasers"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Which campaign resend shortcut to use. Default is `to_non_openers`."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "shortcut_type"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsCreateResend'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/create-resend",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "shortcut_type",
+ "tool_parameter_name": "resend_shortcut_type",
+ "description": "Which campaign resend shortcut to use. Default is `to_non_openers`.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "to_non_openers",
+ "to_new_subscribers",
+ "to_non_clickers",
+ "to_non_purchasers"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Which campaign resend shortcut to use. Default is `to_non_openers`."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": false,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"shortcut_type\": {\n \"type\": \"string\",\n \"title\": \"Resend Shortcut Type\",\n \"description\": \"Which campaign resend shortcut to use. Default is `to_non_openers`.\",\n \"enum\": [\n \"to_non_openers\",\n \"to_new_subscribers\",\n \"to_non_clickers\",\n \"to_non_purchasers\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ResumeRssDrivenCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ResumeRssDrivenCampaign.json
new file mode 100644
index 00000000..dc0c28ce
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ResumeRssDrivenCampaign.json
@@ -0,0 +1,107 @@
+{
+ "name": "ResumeRssDrivenCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.ResumeRssDrivenCampaign@0.1.0",
+ "description": "Resume an RSS-Driven campaign in Mailchimp.\n\nThis tool resumes an RSS-Driven campaign in Mailchimp, allowing previously paused campaigns to continue sending as planned.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the RSS-driven campaign to be resumed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsResume'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/resume",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveAudienceContact.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveAudienceContact.json
new file mode 100644
index 00000000..c331a427
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveAudienceContact.json
@@ -0,0 +1,206 @@
+{
+ "name": "RetrieveAudienceContact",
+ "fully_qualified_name": "MailchimpTransactionApi.RetrieveAudienceContact@0.1.0",
+ "description": "Retrieve a specific omni-channel contact in an audience.\n\n",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_unique_id",
+ "required": true,
+ "description": "The unique ID for the audience to retrieve the contact from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "audience_id"
+ },
+ {
+ "name": "unique_contact_identifier",
+ "required": true,
+ "description": "A unique identifier for the contact, either a Mailchimp contact ID or a channel hash. Format: email:[md5_hash] for emails or sms:[sha256_hash] for phone numbers.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the contact, which can be a Mailchimp contact ID or a channel hash. A channel hash must follow the format email:[md5_hash] (where the hash is the MD5 of the lowercased email address) or sms:[sha256_hash] (where the hash is the SHA256 of the E.164-formatted phone number)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "contact_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects, when retrieving contact details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAudienceContact'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences/{audience_id}/contacts/{contact_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "audience_id",
+ "tool_parameter_name": "audience_unique_id",
+ "description": "The unique ID for the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "contact_id",
+ "tool_parameter_name": "unique_contact_identifier",
+ "description": "A unique identifier for the contact, which can be a Mailchimp contact ID or a channel hash. A channel hash must follow the format email:[md5_hash] (where the hash is the MD5 of the lowercased email address) or sms:[sha256_hash] (where the hash is the SHA256 of the E.164-formatted phone number).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the contact, which can be a Mailchimp contact ID or a channel hash. A channel hash must follow the format email:[md5_hash] (where the hash is the MD5 of the lowercased email address) or sms:[sha256_hash] (where the hash is the SHA256 of the E.164-formatted phone number)."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveAudienceContactList.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveAudienceContactList.json
new file mode 100644
index 00000000..58521de2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveAudienceContactList.json
@@ -0,0 +1,371 @@
+{
+ "name": "RetrieveAudienceContactList",
+ "fully_qualified_name": "MailchimpTransactionApi.RetrieveAudienceContactList@0.1.0",
+ "description": "Retrieve contacts for a specific marketing audience.\n\nUse this tool to obtain a list of omni-channel contacts associated with a particular audience in your marketing campaigns.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_id",
+ "required": true,
+ "description": "The unique identifier for the specific audience to retrieve contacts. Ensure this ID corresponds to an existing audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "audience_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated fields to exclude from the response, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specifies how many records to return, from 10 to 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_cursor",
+ "required": false,
+ "description": "Paginate through records using a `next_cursor` from a previous request. By default, fetches the first page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Paginate through a collection of records by setting the `cursor` parameter to a `next_cursor` attribute returned by a previous request. Default value fetches the first \"page\" of results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cursor"
+ },
+ {
+ "name": "created_before_datetime",
+ "required": false,
+ "description": "Restricts the response to contacts created at or before the specified time. Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts created at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_before"
+ },
+ {
+ "name": "created_since",
+ "required": false,
+ "description": "Restrict contacts to those created after this timestamp (exclusive). Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts created after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_since"
+ },
+ {
+ "name": "restrict_by_update_date_before",
+ "required": false,
+ "description": "Restricts the response to contacts updated at or before the specified date and time, using ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts updated at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "updated_before"
+ },
+ {
+ "name": "updated_since",
+ "required": false,
+ "description": "Restrict response to contacts updated after this time using ISO 8601 format (exclusive).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts updated after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "updated_since"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getAudienceContactList'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences/{audience_id}/contacts",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cursor",
+ "tool_parameter_name": "pagination_cursor",
+ "description": "Paginate through a collection of records by setting the `cursor` parameter to a `next_cursor` attribute returned by a previous request. Default value fetches the first \"page\" of results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Paginate through a collection of records by setting the `cursor` parameter to a `next_cursor` attribute returned by a previous request. Default value fetches the first \"page\" of results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_before",
+ "tool_parameter_name": "created_before_datetime",
+ "description": "Restricts the response to contacts created at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts created at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_since",
+ "tool_parameter_name": "created_since",
+ "description": "Restricts the response to contacts created after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts created after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "updated_before",
+ "tool_parameter_name": "restrict_by_update_date_before",
+ "description": "Restricts the response to contacts updated at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts updated at or before the specified time (inclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "updated_since",
+ "tool_parameter_name": "updated_since",
+ "description": "Restricts the response to contacts updated after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restricts the response to contacts updated after the specified time (exclusive). Uses ISO 8601 format: 2025-04-23T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "audience_id",
+ "tool_parameter_name": "audience_id",
+ "description": "The unique ID for the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveCampaignSubscriberActivity.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveCampaignSubscriberActivity.json
new file mode 100644
index 00000000..4b4e8d3f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveCampaignSubscriberActivity.json
@@ -0,0 +1,272 @@
+{
+ "name": "RetrieveCampaignSubscriberActivity",
+ "fully_qualified_name": "MailchimpTransactionApi.RetrieveCampaignSubscriberActivity@0.1.0",
+ "description": "Retrieve subscriber activity for a specific campaign.\n\nUse this tool to get a list of subscriber activities for a particular email campaign in Mailchimp. It provides information on how subscribers interacted with the campaign emails.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for a specific email campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "number_of_records_to_return",
+ "required": false,
+ "description": "Specifies how many records to return. The default is 10, with a maximum of 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "activity_since_timestamp",
+ "required": false,
+ "description": "Restrict results to email activity events occurring after this timestamp, using ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getReportsIdEmailActivity'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/reports/{campaign_id}/email-activity",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "number_of_records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since",
+ "tool_parameter_name": "activity_since_timestamp",
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to email activity events that occur after a specific time. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveCartLineItemInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveCartLineItemInfo.json
new file mode 100644
index 00000000..a2a9762b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveCartLineItemInfo.json
@@ -0,0 +1,239 @@
+{
+ "name": "RetrieveCartLineItemInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.RetrieveCartLineItemInfo@0.1.0",
+ "description": "Get information about a specific cart line item.\n\nCall this tool to obtain details about a specific item in an e-commerce cart, such as product details and quantity.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "Unique identifier for the store. Use this to specify which store's cart line item you want to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "required": true,
+ "description": "The unique identifier for the cart. Required to retrieve specific cart line item information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ },
+ {
+ "name": "cart_line_item_id",
+ "required": true,
+ "description": "The ID for the line item in a specific cart. Used to identify which item details to retrieve.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "line_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return for the cart line item. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getEcommerceStoresIdCartsIdLinesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_identifier",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "line_id",
+ "tool_parameter_name": "cart_line_item_id",
+ "description": "The id for the line item of a cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveContactEvents.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveContactEvents.json
new file mode 100644
index 00000000..a12daf35
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveContactEvents.json
@@ -0,0 +1,272 @@
+{
+ "name": "RetrieveContactEvents",
+ "fully_qualified_name": "MailchimpTransactionApi.RetrieveContactEvents@0.1.0",
+ "description": "Retrieve events for a specific contact in a list.\n\nUse this tool to obtain detailed event information for a specific contact in a Mailchimp list. This is useful for tracking interactions or activities associated with a subscriber.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list from which to retrieve contact events.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "contact_identifier",
+ "required": true,
+ "description": "The unique identifier for the list member. This can be the MD5 hash of the lowercase email address, the email address itself, or the contact ID.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "records_to_return_count",
+ "required": false,
+ "description": "The number of records to return. Default is 10 and maximum is 1000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "return_field_list",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields",
+ "required": false,
+ "description": "Comma-separated fields to exclude from the response using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListsIdMembersIdEvents'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/events",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "fields",
+ "tool_parameter_name": "return_field_list",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "contact_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveMailchimpLists.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveMailchimpLists.json
new file mode 100644
index 00000000..5d978a92
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveMailchimpLists.json
@@ -0,0 +1,503 @@
+{
+ "name": "RetrieveMailchimpLists",
+ "fully_qualified_name": "MailchimpTransactionApi.RetrieveMailchimpLists@0.1.0",
+ "description": "Retrieve information about all Mailchimp lists.\n\nCall this tool to obtain details about all the lists associated with a Mailchimp account.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_fields_list",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "records_to_return",
+ "required": false,
+ "description": "The number of list records to return. Accepts values between 1 and 1000, with a default of 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ },
+ {
+ "name": "created_before_date",
+ "required": false,
+ "description": "Restrict response to lists created before the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict response to lists created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_date_created"
+ },
+ {
+ "name": "created_after_date",
+ "required": false,
+ "description": "Restrict results to lists created after this date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_date_created"
+ },
+ {
+ "name": "restrict_to_lists_before_last_campaign_sent",
+ "required": false,
+ "description": "Restrict results to lists created before the last campaign send date (ISO 8601 format).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created before the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "before_campaign_last_sent"
+ },
+ {
+ "name": "lists_after_last_campaign_date",
+ "required": false,
+ "description": "Restrict results to lists created after the last campaign send date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created after the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "since_campaign_last_sent"
+ },
+ {
+ "name": "filter_by_subscriber_email",
+ "required": false,
+ "description": "Restrict results to lists that include a specific subscriber's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists that include a specific subscriber's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "email"
+ },
+ {
+ "name": "sort_lists_by_field",
+ "required": false,
+ "description": "Field by which to sort the list results. Choose from available list fields.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_field"
+ },
+ {
+ "name": "sort_direction",
+ "required": false,
+ "description": "Determines the order direction for the sorted results. Accepts 'asc' for ascending and 'desc' for descending.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "sort_dir"
+ },
+ {
+ "name": "restrict_to_ecommerce_store_lists",
+ "required": false,
+ "description": "Restrict results to lists containing an active, connected, undeleted ecommerce store. Expected values are 'true' or 'false'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists that contain an active, connected, undeleted ecommerce store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "has_ecommerce_store"
+ },
+ {
+ "name": "include_total_contacts",
+ "required": false,
+ "description": "Set to true to return the total_contacts field, which includes an approximate count of all contacts in any state.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "include_total_contacts"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getLists'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_fields_list",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "records_to_return",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_date_created",
+ "tool_parameter_name": "created_before_date",
+ "description": "Restrict response to lists created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict response to lists created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_date_created",
+ "tool_parameter_name": "created_after_date",
+ "description": "Restrict results to lists created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "before_campaign_last_sent",
+ "tool_parameter_name": "restrict_to_lists_before_last_campaign_sent",
+ "description": "Restrict results to lists created before the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created before the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "since_campaign_last_sent",
+ "tool_parameter_name": "lists_after_last_campaign_date",
+ "description": "Restrict results to lists created after the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists created after the last campaign send date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "email",
+ "tool_parameter_name": "filter_by_subscriber_email",
+ "description": "Restrict results to lists that include a specific subscriber's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists that include a specific subscriber's email address."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_field",
+ "tool_parameter_name": "sort_lists_by_field",
+ "description": "Returns files sorted by the specified field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Returns files sorted by the specified field."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "sort_dir",
+ "tool_parameter_name": "sort_direction",
+ "description": "Determines the order direction for sorted results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines the order direction for sorted results."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "has_ecommerce_store",
+ "tool_parameter_name": "restrict_to_ecommerce_store_lists",
+ "description": "Restrict results to lists that contain an active, connected, undeleted ecommerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Restrict results to lists that contain an active, connected, undeleted ecommerce store."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "include_total_contacts",
+ "tool_parameter_name": "include_total_contacts",
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Return the total_contacts field in the stats response, which contains an approximate count of all contacts in any state."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveMemberTags.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveMemberTags.json
new file mode 100644
index 00000000..42f8df1a
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/RetrieveMemberTags.json
@@ -0,0 +1,272 @@
+{
+ "name": "RetrieveMemberTags",
+ "fully_qualified_name": "MailchimpTransactionApi.RetrieveMemberTags@0.1.0",
+ "description": "Fetches tags for a specific mailing list member.\n\nUse this tool to retrieve all tags associated with a specific member of a mailing list identified by their subscriber hash.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the mailing list. Required to specify which list to retrieve member tags from.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the email, or email address, or contact_id of the list member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_specific_fields",
+ "required": false,
+ "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "record_count",
+ "required": false,
+ "description": "Specify the number of records to return, between 1 and 1000. Default is 10.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "count"
+ },
+ {
+ "name": "pagination_offset",
+ "required": false,
+ "description": "The number of records to skip for pagination. Default is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "offset"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getListMemberTags'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/tags",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_specific_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "count",
+ "tool_parameter_name": "record_count",
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of records to return. Default value is 10. Maximum value is 1000"
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "offset",
+ "tool_parameter_name": "pagination_offset",
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this is the number of records from a collection to skip. Default value is 0."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ReviewCampaignSendChecklist.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ReviewCampaignSendChecklist.json
new file mode 100644
index 00000000..e58121b9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ReviewCampaignSendChecklist.json
@@ -0,0 +1,173 @@
+{
+ "name": "ReviewCampaignSendChecklist",
+ "fully_qualified_name": "MailchimpTransactionApi.ReviewCampaignSendChecklist@0.1.0",
+ "description": "Review the send checklist for a Mailchimp campaign.\n\nThis tool is used to review the send checklist for a specific Mailchimp campaign. It helps to identify and resolve any potential issues before sending the campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getCampaignsIdSendChecklist'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/send-checklist",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ScheduleCampaignDelivery.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ScheduleCampaignDelivery.json
new file mode 100644
index 00000000..77272592
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/ScheduleCampaignDelivery.json
@@ -0,0 +1,239 @@
+{
+ "name": "ScheduleCampaignDelivery",
+ "fully_qualified_name": "MailchimpTransactionApi.ScheduleCampaignDelivery@0.1.0",
+ "description": "Schedule a Mailchimp campaign for delivery.\n\nUse this tool to schedule a Mailchimp campaign for delivery. Ideal for standard campaigns; for Multivariate or RSS campaigns, consider using the send action instead.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to be scheduled.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "schedule_delivery_time",
+ "required": true,
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Must be on the quarter-hour (:00, :15, :30, :45).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "schedule_time"
+ },
+ {
+ "name": "batch_delivery_delay",
+ "required": false,
+ "description": "The delay in minutes between batches for campaign delivery.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The delay, in minutes, between batches."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "batch_delivery.batch_delay"
+ },
+ {
+ "name": "number_of_batches_for_campaign",
+ "required": false,
+ "description": "The number of batches for the campaign send. Determines how the campaign delivery is split into batches.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of batches for the campaign send."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "batch_delivery.batch_count"
+ },
+ {
+ "name": "use_timewarp",
+ "required": false,
+ "description": "Set to true to use Timewarp for localizing campaign delivery to recipients' time zones. Cannot be true when using Batch Delivery.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "timewarp"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsSchedule'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/schedule",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "schedule_time",
+ "tool_parameter_name": "schedule_delivery_time",
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45).",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45)."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "timewarp",
+ "tool_parameter_name": "use_timewarp",
+ "description": "Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/).",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/)."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "batch_delivery.batch_delay",
+ "tool_parameter_name": "batch_delivery_delay",
+ "description": "The delay, in minutes, between batches.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The delay, in minutes, between batches."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "batch_delivery.batch_count",
+ "tool_parameter_name": "number_of_batches_for_campaign",
+ "description": "The number of batches for the campaign send.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of batches for the campaign send."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"schedule_time\"\n ],\n \"properties\": {\n \"schedule_time\": {\n \"type\": \"string\",\n \"title\": \"Schedule Time\",\n \"format\": \"date-time\",\n \"description\": \"The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Campaigns may only be scheduled to send on the quarter-hour (:00, :15, :30, :45).\"\n },\n \"timewarp\": {\n \"type\": \"boolean\",\n \"title\": \"Timewarp\",\n \"description\": \"Choose whether the campaign should use [Timewarp](https://mailchimp.com/help/use-timewarp/) when sending. Campaigns scheduled with Timewarp are localized based on the recipients' time zones. For example, a Timewarp campaign with a `schedule_time` of 13:00 will be sent to each recipient at 1:00pm in their local time. Cannot be set to `true` for campaigns using [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/).\"\n },\n \"batch_delivery\": {\n \"type\": \"object\",\n \"title\": \"Batch Delivery\",\n \"description\": \"Choose whether the campaign should use [Batch Delivery](https://mailchimp.com/help/schedule-batch-delivery/). Cannot be set to `true` for campaigns using [Timewarp](https://mailchimp.com/help/use-timewarp/).\",\n \"required\": [\n \"batch_delay\",\n \"batch_count\"\n ],\n \"properties\": {\n \"batch_delay\": {\n \"type\": \"integer\",\n \"title\": \"Batch Delay\",\n \"description\": \"The delay, in minutes, between batches.\"\n },\n \"batch_count\": {\n \"type\": \"integer\",\n \"title\": \"Batch Count\",\n \"description\": \"The number of batches for the campaign send.\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchMailchimpCampaigns.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchMailchimpCampaigns.json
new file mode 100644
index 00000000..6ad8f678
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchMailchimpCampaigns.json
@@ -0,0 +1,173 @@
+{
+ "name": "SearchMailchimpCampaigns",
+ "fully_qualified_name": "MailchimpTransactionApi.SearchMailchimpCampaigns@0.1.0",
+ "description": "Search for email campaigns using query terms.\n\nUse this tool to search all Mailchimp email campaigns that match specific query terms. This can help find campaigns based on certain criteria or keywords.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "search_query",
+ "required": true,
+ "description": "The terms used to filter and search Mailchimp campaigns.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter results."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "query"
+ },
+ {
+ "name": "included_fields",
+ "required": false,
+ "description": "Specify the fields to return as a comma-separated list. Use dot notation for sub-object parameters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "exclude_campaign_fields",
+ "required": false,
+ "description": "Comma-separated list of fields to exclude from the search results. Use dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getSearchCampaigns'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/search-campaigns",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "included_fields",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "exclude_campaign_fields",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "query",
+ "tool_parameter_name": "search_query",
+ "description": "The search query used to filter results.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter results."
+ },
+ "accepted_as": "query",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchMailchimpMembers.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchMailchimpMembers.json
new file mode 100644
index 00000000..2510f324
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchMailchimpMembers.json
@@ -0,0 +1,206 @@
+{
+ "name": "SearchMailchimpMembers",
+ "fully_qualified_name": "MailchimpTransactionApi.SearchMailchimpMembers@0.1.0",
+ "description": "Search for Mailchimp list members across lists.\n\nSearch for list members in Mailchimp. This can be restricted to a specific list or used to search across all lists in an account.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "search_query",
+ "required": true,
+ "description": "The search query to filter list members by email, first name, or last name.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter results. Query should be a valid email, or a string representing a contact's first or last name."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "query"
+ },
+ {
+ "name": "fields_to_return",
+ "required": false,
+ "description": "Comma-separated list of fields to return, using dot notation for sub-objects.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "fields"
+ },
+ {
+ "name": "fields_to_exclude",
+ "required": false,
+ "description": "A comma-separated list specifying which fields to exclude from results. Use dot notation for sub-object references.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "exclude_fields"
+ },
+ {
+ "name": "list_unique_id",
+ "required": false,
+ "description": "The unique identifier for a Mailchimp list to restrict the search. Use this to specify a particular list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'getSearchMembers'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/search-members",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "fields",
+ "tool_parameter_name": "fields_to_return",
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "exclude_fields",
+ "tool_parameter_name": "fields_to_exclude",
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "query",
+ "tool_parameter_name": "search_query",
+ "description": "The search query used to filter results. Query should be a valid email, or a string representing a contact's first or last name.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter results. Query should be a valid email, or a string representing a contact's first or last name."
+ },
+ "accepted_as": "query",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique id for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the list."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchTagsByName.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchTagsByName.json
new file mode 100644
index 00000000..78758845
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SearchTagsByName.json
@@ -0,0 +1,140 @@
+{
+ "name": "SearchTagsByName",
+ "fully_qualified_name": "MailchimpTransactionApi.SearchTagsByName@0.1.0",
+ "description": "Search for tags on a list by name.\n\nUse this tool to find specific tags by name within a Mailchimp list. If no name is provided, it will return all tags on the list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique identifier for a Mailchimp list. This is essential for specifying which list to search for tags.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "tag_name_search_query",
+ "required": false,
+ "description": "The prefix to filter tags by name. Returns tags where names start with this query.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter tags. The search query will be compared to each tag as a prefix, so all tags that have a name starting with this field will be returned."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'searchTagsByName'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/tag-search",
+ "http_method": "GET",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "name",
+ "tool_parameter_name": "tag_name_search_query",
+ "description": "The search query used to filter tags. The search query will be compared to each tag as a prefix, so all tags that have a name starting with this field will be returned.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The search query used to filter tags. The search query will be compared to each tag as a prefix, so all tags that have a name starting with this field will be returned."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SendMailchimpCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SendMailchimpCampaign.json
new file mode 100644
index 00000000..9731ca11
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SendMailchimpCampaign.json
@@ -0,0 +1,107 @@
+{
+ "name": "SendMailchimpCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.SendMailchimpCampaign@0.1.0",
+ "description": "Send a Mailchimp campaign immediately or as scheduled.\n\nUse this tool to send a Mailchimp campaign. For RSS campaigns, it will follow the predefined schedule, while all other types of campaigns will be sent immediately.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to be sent. This is a string value required to trigger the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsSend'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/send",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SendTestEmailCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SendTestEmailCampaign.json
new file mode 100644
index 00000000..ddbe4250
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SendTestEmailCampaign.json
@@ -0,0 +1,179 @@
+{
+ "name": "SendTestEmailCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.SendTestEmailCampaign@0.1.0",
+ "description": "Send a test email for a specific campaign.\n\nUse this tool to send a test email for a specified Mailchimp marketing campaign. Useful for previewing the campaign before final send.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique ID for the specific Mailchimp campaign to send the test email for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "test_email_addresses",
+ "required": true,
+ "description": "An array of email addresses to receive the test email.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of email addresses to send the test email to."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "test_emails"
+ },
+ {
+ "name": "test_email_send_type",
+ "required": true,
+ "description": "Specify the type of test email to send: 'html' or 'plaintext'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "html",
+ "plaintext"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Choose the type of test email to send."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "send_type"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsTest'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/test",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "test_emails",
+ "tool_parameter_name": "test_email_addresses",
+ "description": "An array of email addresses to send the test email to.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of email addresses to send the test email to."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "send_type",
+ "tool_parameter_name": "test_email_send_type",
+ "description": "Choose the type of test email to send.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "html",
+ "plaintext"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Choose the type of test email to send."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"test_emails\",\n \"send_type\"\n ],\n \"properties\": {\n \"test_emails\": {\n \"type\": \"array\",\n \"title\": \"Test Emails\",\n \"description\": \"An array of email addresses to send the test email to.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"send_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"html\",\n \"plaintext\"\n ],\n \"title\": \"Type of email to test\",\n \"description\": \"Choose the type of test email to send.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SetCampaignContent.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SetCampaignContent.json
new file mode 100644
index 00000000..37e2613c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/SetCampaignContent.json
@@ -0,0 +1,500 @@
+{
+ "name": "SetCampaignContent",
+ "fully_qualified_name": "MailchimpTransactionApi.SetCampaignContent@0.1.0",
+ "description": "Set the content for a campaign in Mailchimp.\n\nUse this tool to update or set the content for a specific campaign in Mailchimp. It is called when you need to change or define what content is included in a campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to set the content for. This ID is required to specify which campaign you are updating.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "campaign_content",
+ "required": true,
+ "description": "A JSON object defining the content of the campaign, including HTML, plain text, template, and more.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "plain_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When importing a campaign, the URL where the HTML lives."
+ },
+ "template": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ },
+ "inner_properties": null,
+ "description": "Use this template to generate the HTML content of the campaign"
+ },
+ "archive": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "archive_content": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ },
+ "inner_properties": null,
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/)."
+ },
+ "variate_contents": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "content_label": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The label used to identify the content option."
+ },
+ "plain_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When importing a campaign, the URL for the HTML."
+ },
+ "template": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ },
+ "inner_properties": null,
+ "description": "Use this template to generate the HTML content for the campaign."
+ },
+ "archive": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "archive_content": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ },
+ "inner_properties": null,
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/)."
+ }
+ },
+ "description": "Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'putCampaignsIdContent'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/content",
+ "http_method": "PUT",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "campaign_content",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "plain_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When importing a campaign, the URL where the HTML lives."
+ },
+ "template": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ },
+ "inner_properties": null,
+ "description": "Use this template to generate the HTML content of the campaign"
+ },
+ "archive": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "archive_content": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ },
+ "inner_properties": null,
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/)."
+ },
+ "variate_contents": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "content_label": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The label used to identify the content option."
+ },
+ "plain_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The plain-text portion of the campaign. If left unspecified, we'll generate this automatically."
+ },
+ "html": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the campaign."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When importing a campaign, the URL for the HTML."
+ },
+ "template": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ },
+ "sections": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template."
+ }
+ },
+ "inner_properties": null,
+ "description": "Use this template to generate the HTML content for the campaign."
+ },
+ "archive": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "archive_content": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded representation of the archive file."
+ },
+ "archive_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "zip",
+ "tar.gz",
+ "tar.bz2",
+ "tar",
+ "tgz",
+ "tbz"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of encoded file. Defaults to zip."
+ }
+ },
+ "inner_properties": null,
+ "description": "Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/)."
+ }
+ },
+ "description": "Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Content\",\n \"description\": \"The HTML and plain-text content for a campaign\",\n \"properties\": {\n \"plain_text\": {\n \"type\": \"string\",\n \"title\": \"Plain Text\",\n \"description\": \"The plain-text portion of the campaign. If left unspecified, we'll generate this automatically.\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Campaign HTML\",\n \"description\": \"The raw HTML for the campaign.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Campaign URL\",\n \"description\": \"When importing a campaign, the URL where the HTML lives.\"\n },\n \"template\": {\n \"type\": \"object\",\n \"title\": \"Template Content\",\n \"description\": \"Use this template to generate the HTML content of the campaign\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n },\n \"sections\": {\n \"type\": \"object\",\n \"title\": \"Template Sections\",\n \"description\": \"Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template.\"\n }\n }\n },\n \"archive\": {\n \"type\": \"object\",\n \"title\": \"Upload Archive\",\n \"description\": \"Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).\",\n \"required\": [\n \"archive_content\"\n ],\n \"properties\": {\n \"archive_content\": {\n \"type\": \"string\",\n \"title\": \"Archive Content\",\n \"description\": \"The base64-encoded representation of the archive file.\"\n },\n \"archive_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"zip\",\n \"tar.gz\",\n \"tar.bz2\",\n \"tar\",\n \"tgz\",\n \"tbz\"\n ],\n \"title\": \"Archive Type\",\n \"description\": \"The type of encoded file. Defaults to zip.\"\n }\n }\n },\n \"variate_contents\": {\n \"type\": \"array\",\n \"title\": \"Variate Contents\",\n \"description\": \"Content options for [Multivariate Campaigns](https://mailchimp.com/help/about-multivariate-campaigns/). Each content option must provide HTML content and may optionally provide plain text. For campaigns not testing content, only one object should be provided.\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"content_label\"\n ],\n \"properties\": {\n \"content_label\": {\n \"type\": \"string\",\n \"title\": \"Content Label\",\n \"description\": \"The label used to identify the content option.\"\n },\n \"plain_text\": {\n \"type\": \"string\",\n \"title\": \"Plain Text\",\n \"description\": \"The plain-text portion of the campaign. If left unspecified, we'll generate this automatically.\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Campaign HTML\",\n \"description\": \"The raw HTML for the campaign.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Campaign URL\",\n \"description\": \"When importing a campaign, the URL for the HTML.\"\n },\n \"template\": {\n \"type\": \"object\",\n \"title\": \"Template Content\",\n \"description\": \"Use this template to generate the HTML content for the campaign.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n },\n \"sections\": {\n \"type\": \"object\",\n \"title\": \"Template Sections\",\n \"description\": \"Content for the sections of the template. Each key should be the unique [mc:edit area](https://mailchimp.com/help/create-editable-content-areas-with-mailchimps-template-language/) name from the template.\"\n }\n }\n },\n \"archive\": {\n \"type\": \"object\",\n \"title\": \"Upload Archive\",\n \"description\": \"Available when uploading an archive to create campaign content. The archive should include all campaign content and images. [Learn more](https://mailchimp.com/help/import-a-custom-html-template/).\",\n \"required\": [\n \"archive_content\"\n ],\n \"properties\": {\n \"archive_content\": {\n \"type\": \"string\",\n \"title\": \"Archive Content\",\n \"description\": \"The base64-encoded representation of the archive file.\"\n },\n \"archive_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"zip\",\n \"tar.gz\",\n \"tar.bz2\",\n \"tar\",\n \"tgz\",\n \"tbz\"\n ],\n \"title\": \"Archive Type\",\n \"description\": \"The type of encoded file. Defaults to zip.\"\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartAutomatedEmail.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartAutomatedEmail.json
new file mode 100644
index 00000000..d1c12f24
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartAutomatedEmail.json
@@ -0,0 +1,140 @@
+{
+ "name": "StartAutomatedEmail",
+ "fully_qualified_name": "MailchimpTransactionApi.StartAutomatedEmail@0.1.0",
+ "description": "Initiate an automated email in Mailchimp.\n\nUse this tool to begin sending an automated email within a specific Mailchimp workflow. Useful for starting email campaigns based on predefined automation workflows.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the Automation workflow in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "automation_email_id",
+ "required": true,
+ "description": "The unique ID for the specific email in the automation workflow to be started.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAutomationsIdEmailsIdActionsStart'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}/actions/start",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "automation_email_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartBatchProcessing.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartBatchProcessing.json
new file mode 100644
index 00000000..57859856
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartBatchProcessing.json
@@ -0,0 +1,219 @@
+{
+ "name": "StartBatchProcessing",
+ "fully_qualified_name": "MailchimpTransactionApi.StartBatchProcessing@0.1.0",
+ "description": "Initiate a batch operations request in Mailchimp.\n\nUse this tool to initiate processing of batch operations requests in Mailchimp Marketing. This is useful for handling multiple actions at once, such as managing email campaigns or subscriber updates.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "batch_operations",
+ "required": true,
+ "description": "A JSON object describing the batch operations to perform, including methods, paths, params, and optional body and operation_id for each operation.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "operations": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "method": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The HTTP method to use for the operation."
+ },
+ "path": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The relative path to use for the operation."
+ },
+ "params": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Any request query parameters. Example parameters: {\"count\":10, \"offset\":0}"
+ },
+ "body": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string containing the JSON body to use with the request."
+ },
+ "operation_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An optional client-supplied id returned with the operation results."
+ }
+ },
+ "description": "An array of objects that describes operations to perform."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postBatches'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batches",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "batch_operations",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "operations": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "method": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The HTTP method to use for the operation."
+ },
+ "path": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The relative path to use for the operation."
+ },
+ "params": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Any request query parameters. Example parameters: {\"count\":10, \"offset\":0}"
+ },
+ "body": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string containing the JSON body to use with the request."
+ },
+ "operation_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An optional client-supplied id returned with the operation results."
+ }
+ },
+ "description": "An array of objects that describes operations to perform."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"required\": [\n \"operations\"\n ],\n \"properties\": {\n \"operations\": {\n \"type\": \"array\",\n \"title\": \"Operations List\",\n \"description\": \"An array of objects that describes operations to perform.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Operations\",\n \"required\": [\n \"method\",\n \"path\"\n ],\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"title\": \"HTTP Method\",\n \"description\": \"The HTTP method to use for the operation.\",\n \"enum\": [\n \"GET\",\n \"POST\",\n \"PUT\",\n \"PATCH\",\n \"DELETE\"\n ],\n \"example\": \"POST\"\n },\n \"path\": {\n \"type\": \"string\",\n \"title\": \"Path\",\n \"description\": \"The relative path to use for the operation.\",\n \"example\": \"/lists\"\n },\n \"params\": {\n \"type\": \"object\",\n \"title\": \"Query Parameters\",\n \"description\": \"Any request query parameters. Example parameters: {\\\"count\\\":10, \\\"offset\\\":0}\",\n \"example\": \"{\\\"count\\\":10,\\\"offset\\\":0}\"\n },\n \"body\": {\n \"type\": \"string\",\n \"title\": \"Body\",\n \"description\": \"A string containing the JSON body to use with the request.\",\n \"example\": \"{\\\"title\\\":\\\"Test\\\"}\"\n },\n \"operation_id\": {\n \"type\": \"string\",\n \"title\": \"Operation ID\",\n \"description\": \"An optional client-supplied id returned with the operation results.\",\n \"example\": \"my-id-123\"\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartMailchimpAutomationEmails.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartMailchimpAutomationEmails.json
new file mode 100644
index 00000000..e222dfcb
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/StartMailchimpAutomationEmails.json
@@ -0,0 +1,107 @@
+{
+ "name": "StartMailchimpAutomationEmails",
+ "fully_qualified_name": "MailchimpTransactionApi.StartMailchimpAutomationEmails@0.1.0",
+ "description": "Start all emails in a Mailchimp automation workflow.\n\nUse this tool to initiate all emails within a specified classic automation workflow in Mailchimp. It should be called when you want to activate a pre-configured sequence of emails in a marketing campaign.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp automation workflow to be started.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postAutomationsIdActionsStartAllEmails'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/actions/start-all-emails",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/TriggerAutomationStep.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/TriggerAutomationStep.json
new file mode 100644
index 00000000..9d914ea9
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/TriggerAutomationStep.json
@@ -0,0 +1,173 @@
+{
+ "name": "TriggerAutomationStep",
+ "fully_qualified_name": "MailchimpTransactionApi.TriggerAutomationStep@0.1.0",
+ "description": "Trigger a step in a Mailchimp automation flow.\n\nUse this tool to activate a specific step in an existing Mailchimp automation flow. It requires the journey and step IDs, which are provided during the creation process in the Customer Journey API.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "flow_id",
+ "required": true,
+ "description": "The unique identifier for the automation flow to trigger a specific step.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the flow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "journey_id"
+ },
+ {
+ "name": "step_identifier",
+ "required": true,
+ "description": "The unique identifier for the step in the Mailchimp automation flow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the Step."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "step_id"
+ },
+ {
+ "name": "list_member_email_address",
+ "required": true,
+ "description": "The email address of the list member to trigger the automation step for.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "email_address"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCustomerJourneysJourneysIdStepsIdActionsTrigger'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/customer-journeys/journeys/{journey_id}/steps/{step_id}/actions/trigger",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "journey_id",
+ "tool_parameter_name": "flow_id",
+ "description": "The id for the flow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the flow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "step_id",
+ "tool_parameter_name": "step_identifier",
+ "description": "The id for the Step.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the Step."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "email_address",
+ "tool_parameter_name": "list_member_email_address",
+ "description": "The list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list member's email address."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber in Automation flow's audience\",\n \"description\": \"Information about subscribers in a Automation flows's audience.\",\n \"required\": [\n \"email_address\"\n ],\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The list member's email address.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnpublishLandingPage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnpublishLandingPage.json
new file mode 100644
index 00000000..397ff55f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnpublishLandingPage.json
@@ -0,0 +1,107 @@
+{
+ "name": "UnpublishLandingPage",
+ "fully_qualified_name": "MailchimpTransactionApi.UnpublishLandingPage@0.1.0",
+ "description": "Unpublish a draft or published landing page.\n\nUsed to unpublish a landing page that is currently in draft or has been published on Mailchimp. This can be useful for managing the visibility of a page.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "landing_page_id",
+ "required": true,
+ "description": "The unique ID of the landing page to be unpublished. Required for identifying the specific page on Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "page_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postLandingPageIdActionsUnpublish'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages/{page_id}/actions/unpublish",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "page_id",
+ "tool_parameter_name": "landing_page_id",
+ "description": "The unique id for the page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnpublishMailchimpSurvey.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnpublishMailchimpSurvey.json
new file mode 100644
index 00000000..71e50016
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnpublishMailchimpSurvey.json
@@ -0,0 +1,140 @@
+{
+ "name": "UnpublishMailchimpSurvey",
+ "fully_qualified_name": "MailchimpTransactionApi.UnpublishMailchimpSurvey@0.1.0",
+ "description": "Unpublish a survey in Mailchimp Marketing.\n\nUse this tool to unpublish a survey that has been published in Mailchimp Marketing. This action is useful when you need to deactivate a survey for any reason.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "mailchimp_list_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list associated with the survey to unpublish.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "survey_id",
+ "required": true,
+ "description": "Enter the unique ID of the survey to unpublish in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "survey_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdSurveysIdActionsUnpublish'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/surveys/{survey_id}/actions/unpublish",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailchimp_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "survey_id",
+ "tool_parameter_name": "survey_id",
+ "description": "The ID of the survey.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the survey."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnscheduleCampaign.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnscheduleCampaign.json
new file mode 100644
index 00000000..8a23dbf4
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UnscheduleCampaign.json
@@ -0,0 +1,107 @@
+{
+ "name": "UnscheduleCampaign",
+ "fully_qualified_name": "MailchimpTransactionApi.UnscheduleCampaign@0.1.0",
+ "description": "Unschedule a scheduled Mailchimp campaign.\n\nUse this tool to unschedule a Mailchimp campaign that is scheduled but hasn't started sending yet.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the scheduled campaign to be unscheduled.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postCampaignsIdActionsUnschedule'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/actions/unschedule",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateAutomationEmailSettings.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateAutomationEmailSettings.json
new file mode 100644
index 00000000..7cc14fed
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateAutomationEmailSettings.json
@@ -0,0 +1,377 @@
+{
+ "name": "UpdateAutomationEmailSettings",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateAutomationEmailSettings@0.1.0",
+ "description": "Update settings for a classic automation workflow email.\n\nUse this tool to update the settings of a specific email in a classic automation workflow in Mailchimp. Applicable for workflows of type: abandonedBrowse, abandonedCart, emailFollowup, or singleWelcome.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "automation_workflow_id",
+ "required": true,
+ "description": "The unique identifier for the Automation workflow to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_id"
+ },
+ {
+ "name": "automation_workflow_email_id",
+ "required": true,
+ "description": "The unique ID for the Automation workflow email to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "workflow_email_id"
+ },
+ {
+ "name": "automation_email_settings",
+ "required": true,
+ "description": "JSON object with settings such as subject line, preview text, title, from name, reply-to email, and delay configurations. Used to update automation email settings.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the Automation."
+ }
+ },
+ "inner_properties": null,
+ "description": "Settings for the campaign including the email subject, from name, and from email address."
+ },
+ "delay": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "amount": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The delay amount for an automation email."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of delay for an automation email."
+ },
+ "direction": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "after"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the delay settings describe before or after the delay action of an automation email."
+ },
+ "action": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup",
+ "ecomm_abandoned_browse",
+ "ecomm_abandoned_cart"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The action that triggers the delay of an automation emails."
+ }
+ },
+ "inner_properties": null,
+ "description": "The delay settings for an automation email."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchAutomationEmailWorkflowId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/automations/{workflow_id}/emails/{workflow_email_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "workflow_id",
+ "tool_parameter_name": "automation_workflow_id",
+ "description": "The unique id for the Automation workflow.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "workflow_email_id",
+ "tool_parameter_name": "automation_workflow_email_id",
+ "description": "The unique id for the Automation workflow email.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the Automation workflow email."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "automation_email_settings",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the Automation."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name for the Automation (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the Automation."
+ }
+ },
+ "inner_properties": null,
+ "description": "Settings for the campaign including the email subject, from name, and from email address."
+ },
+ "delay": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "amount": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The delay amount for an automation email."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "now",
+ "day",
+ "hour",
+ "week"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of delay for an automation email."
+ },
+ "direction": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "after"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the delay settings describe before or after the delay action of an automation email."
+ },
+ "action": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "signup",
+ "ecomm_abandoned_browse",
+ "ecomm_abandoned_cart"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The action that triggers the delay of an automation emails."
+ }
+ },
+ "inner_properties": null,
+ "description": "The delay settings for an automation email."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Update information about a specific workflow email\",\n \"description\": \"Update information about an individual Automation workflow email.\",\n \"properties\": {\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Campaign Settings\",\n \"description\": \"Settings for the campaign including the email subject, from name, and from email address.\",\n \"properties\": {\n \"subject_line\": {\n \"type\": \"string\",\n \"title\": \"Campaign Subject Line\",\n \"description\": \"The subject line for the campaign.\"\n },\n \"preview_text\": {\n \"type\": \"string\",\n \"title\": \"Campaign Preview Text\",\n \"description\": \"The preview text for the campaign.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Automation Title\",\n \"description\": \"The title of the Automation.\"\n },\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name for the Automation (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the Automation.\"\n }\n }\n },\n \"delay\": {\n \"type\": \"object\",\n \"title\": \"Automation Delay\",\n \"description\": \"The delay settings for an automation email.\",\n \"required\": [\n \"action\"\n ],\n \"properties\": {\n \"amount\": {\n \"type\": \"integer\",\n \"title\": \"Delay Amount\",\n \"description\": \"The delay amount for an automation email.\",\n \"example\": 1\n },\n \"type\": {\n \"type\": \"string\",\n \"enum\": [\n \"now\",\n \"day\",\n \"hour\",\n \"week\"\n ],\n \"title\": \"Delay Type\",\n \"description\": \"The type of delay for an automation email.\",\n \"example\": \"day\"\n },\n \"direction\": {\n \"type\": \"string\",\n \"title\": \"Delay Direction\",\n \"description\": \"Whether the delay settings describe before or after the delay action of an automation email.\",\n \"enum\": [\n \"after\"\n ],\n \"example\": \"after\"\n },\n \"action\": {\n \"type\": \"string\",\n \"title\": \"Delay Action\",\n \"description\": \"The action that triggers the delay of an automation emails.\",\n \"enum\": [\n \"signup\",\n \"ecomm_abandoned_browse\",\n \"ecomm_abandoned_cart\"\n ],\n \"example\": \"signup\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateBatchWebhook.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateBatchWebhook.json
new file mode 100644
index 00000000..e8d027ba
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateBatchWebhook.json
@@ -0,0 +1,173 @@
+{
+ "name": "UpdateBatchWebhook",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateBatchWebhook@0.1.0",
+ "description": "Update a batch webhook on Mailchimp.\n\nUse this tool to update a webhook that triggers when a batch request in Mailchimp completes. This is useful for managing notifications and automated responses to batch operations.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "batch_webhook_unique_id",
+ "required": true,
+ "description": "The unique identifier for the batch webhook to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "batch_webhook_id"
+ },
+ {
+ "name": "webhook_url",
+ "required": false,
+ "description": "A valid URL to send webhook notifications when a batch request completes in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "url"
+ },
+ {
+ "name": "enable_webhook",
+ "required": false,
+ "description": "Enable or disable webhook requests (true for enable, false for disable).",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook receives requests or not."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "enabled"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchBatchWebhooks'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/batch-webhooks/{batch_webhook_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "batch_webhook_id",
+ "tool_parameter_name": "batch_webhook_unique_id",
+ "description": "The unique id for the batch webhook.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the batch webhook."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "url",
+ "tool_parameter_name": "webhook_url",
+ "description": "A valid URL for the Webhook.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "enabled",
+ "tool_parameter_name": "enable_webhook",
+ "description": "Whether the webhook receives requests or not.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook receives requests or not."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Batch Webhook\",\n \"description\": \"Update an existing Batch Webook.\",\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the webhook receives requests or not.\",\n \"example\": true\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignFeedback.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignFeedback.json
new file mode 100644
index 00000000..3306c17f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignFeedback.json
@@ -0,0 +1,239 @@
+{
+ "name": "UpdateCampaignFeedback",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateCampaignFeedback@0.1.0",
+ "description": "Update specific feedback for a Mailchimp campaign.\n\nUse this tool to update a particular feedback message for a specific Mailchimp marketing campaign. This is useful when corrections or additional details need to be added to existing feedback.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp campaign to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "feedback_message_id",
+ "required": true,
+ "description": "The unique identifier for the specific feedback message to update in the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "feedback_id"
+ },
+ {
+ "name": "editable_block_id",
+ "required": false,
+ "description": "The ID of the editable block that the feedback addresses within the campaign.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "block_id"
+ },
+ {
+ "name": "feedback_message",
+ "required": false,
+ "description": "The text content of the feedback message to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the feedback."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "message"
+ },
+ {
+ "name": "feedback_is_complete",
+ "required": false,
+ "description": "Indicates if the feedback is marked as complete. Use true for complete and false for incomplete.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of feedback."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "is_complete"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchCampaignsIdFeedbackId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}/feedback/{feedback_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "feedback_id",
+ "tool_parameter_name": "feedback_message_id",
+ "description": "The unique id for the feedback message.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the feedback message."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "block_id",
+ "tool_parameter_name": "editable_block_id",
+ "description": "The block id for the editable block that the feedback addresses.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The block id for the editable block that the feedback addresses."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "message",
+ "tool_parameter_name": "feedback_message",
+ "description": "The content of the feedback.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the feedback."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "is_complete",
+ "tool_parameter_name": "feedback_is_complete",
+ "description": "The status of feedback.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status of feedback."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Feedback\",\n \"description\": \"A specific feedback message from a specific campaign.\",\n \"properties\": {\n \"block_id\": {\n \"type\": \"integer\",\n \"title\": \"Block ID\",\n \"description\": \"The block id for the editable block that the feedback addresses.\"\n },\n \"message\": {\n \"type\": \"string\",\n \"title\": \"Message\",\n \"description\": \"The content of the feedback.\"\n },\n \"is_complete\": {\n \"type\": \"boolean\",\n \"title\": \"Complete\",\n \"description\": \"The status of feedback.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignFolder.json
new file mode 100644
index 00000000..18fab71d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignFolder.json
@@ -0,0 +1,140 @@
+{
+ "name": "UpdateCampaignFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateCampaignFolder@0.1.0",
+ "description": "Update a specific folder used to organize campaigns.\n\nUse this tool to modify the details of an existing campaign folder in Mailchimp. It updates the specified folder to help organize marketing campaigns more efficiently.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_folder_id",
+ "required": true,
+ "description": "The unique identifier for the campaign folder to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "folder_name",
+ "required": true,
+ "description": "The new name to assign to the campaign folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Name to associate with the folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchCampaignFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaign-folders/{folder_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "campaign_folder_id",
+ "description": "The unique id for the campaign folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "folder_name",
+ "description": "Name to associate with the folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Name to associate with the folder."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign Folder\",\n \"description\": \"A folder used to organize campaigns.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"Name to associate with the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignSettings.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignSettings.json
new file mode 100644
index 00000000..f85e792b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCampaignSettings.json
@@ -0,0 +1,1228 @@
+{
+ "name": "UpdateCampaignSettings",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateCampaignSettings@0.1.0",
+ "description": "Update campaign settings in Mailchimp.\n\nUse this tool to modify specific settings for a given campaign in Mailchimp. Suitable for updating parts or all of a campaign's configuration.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "campaign_unique_id",
+ "required": true,
+ "description": "The unique identifier for the campaign to be updated in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "campaign_id"
+ },
+ {
+ "name": "campaign_update_request_body",
+ "required": true,
+ "description": "JSON object containing settings to update for the campaign, such as recipients, settings, and tracking.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "recipients": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "saved_segment_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign."
+ },
+ "match": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Segment match type."
+ },
+ "conditions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ }
+ },
+ "inner_properties": null,
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options."
+ }
+ },
+ "inner_properties": null,
+ "description": "List settings for the campaign."
+ },
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to."
+ },
+ "fb_comments": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more."
+ },
+ "variate_settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "winner_criteria": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application."
+ },
+ "wait_time": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used."
+ },
+ "send_times": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored."
+ },
+ "from_names": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used."
+ },
+ "reply_to_addresses": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings specific to A/B test campaigns."
+ },
+ "tracking": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opens": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "capsule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ }
+ },
+ "inner_properties": null,
+ "description": "The tracking options for a campaign."
+ },
+ "rss_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "feed_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The frequency of the RSS Campaign."
+ },
+ "schedule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "hour": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sunday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ },
+ "inner_properties": null,
+ "description": "The days of the week to send a daily RSS Campaign."
+ },
+ "weekly_send_day": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ },
+ "inner_properties": null,
+ "description": "The schedule for sending the RSS Campaign."
+ },
+ "constrain_rss_img": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "inner_properties": null,
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign."
+ },
+ "social_card": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ },
+ "inner_properties": null,
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/)."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchCampaignsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/campaigns/{campaign_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "campaign_id",
+ "tool_parameter_name": "campaign_unique_id",
+ "description": "The unique id for the campaign.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the campaign."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "campaign_update_request_body",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "recipients": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "list_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique list id."
+ },
+ "segment_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "saved_segment_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for an existing saved segment."
+ },
+ "prebuilt_segment_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The prebuilt segment id, if a prebuilt segment has been designated for this campaign."
+ },
+ "match": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Segment match type."
+ },
+ "conditions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {},
+ "description": "Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas)."
+ }
+ },
+ "inner_properties": null,
+ "description": "An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options."
+ }
+ },
+ "inner_properties": null,
+ "description": "List settings for the campaign."
+ },
+ "settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subject_line": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subject line for the campaign."
+ },
+ "preview_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The preview text for the campaign."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of the campaign."
+ },
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The 'from' name on the campaign (not an email address)."
+ },
+ "reply_to": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The reply-to email address for the campaign."
+ },
+ "use_conversation": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use Mailchimp Conversation feature to manage out-of-office replies."
+ },
+ "to_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/)."
+ },
+ "folder_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the campaign is listed in a folder, the id for that folder."
+ },
+ "authenticate": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`."
+ },
+ "auto_footer": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign."
+ },
+ "inline_css": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically inline the CSS included with the campaign content."
+ },
+ "auto_tweet": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent."
+ },
+ "auto_fb_post": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to."
+ },
+ "fb_comments": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`."
+ },
+ "template_id": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the template to use."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings for your campaign, including subject, from name, reply-to address, and more."
+ },
+ "variate_settings": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "winner_criteria": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "opens",
+ "clicks",
+ "manual",
+ "total_revenue"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application."
+ },
+ "wait_time": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes."
+ },
+ "test_size": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The percentage of recipients to send the test combinations to, must be a value between 10 and 100."
+ },
+ "subject_lines": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used."
+ },
+ "send_times": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored."
+ },
+ "from_names": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used."
+ },
+ "reply_to_addresses": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used."
+ }
+ },
+ "inner_properties": null,
+ "description": "The settings specific to A/B test campaigns."
+ },
+ "tracking": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opens": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "html_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "text_clicks": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns."
+ },
+ "goal_tracking": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "ecomm360": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to enable e-commerce tracking."
+ },
+ "google_analytics": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes)."
+ },
+ "clicktale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes)."
+ },
+ "salesforce": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Create a campaign in a connected Salesforce account."
+ },
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ },
+ "capsule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "notes": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Update contact notes for a campaign based on subscriber email addresses."
+ }
+ },
+ "inner_properties": null,
+ "description": "Deprecated"
+ }
+ },
+ "inner_properties": null,
+ "description": "The tracking options for a campaign."
+ },
+ "rss_opts": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "feed_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the RSS feed."
+ },
+ "frequency": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "daily",
+ "weekly",
+ "monthly"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The frequency of the RSS Campaign."
+ },
+ "schedule": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "hour": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/)."
+ },
+ "daily_send": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sunday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Sundays."
+ },
+ "monday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Mondays."
+ },
+ "tuesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Tuesdays."
+ },
+ "wednesday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Wednesdays."
+ },
+ "thursday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Thursdays."
+ },
+ "friday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Fridays."
+ },
+ "saturday": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Sends the daily RSS Campaign on Saturdays."
+ }
+ },
+ "inner_properties": null,
+ "description": "The days of the week to send a daily RSS Campaign."
+ },
+ "weekly_send_day": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "sunday",
+ "monday",
+ "tuesday",
+ "wednesday",
+ "thursday",
+ "friday",
+ "saturday"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the week to send a weekly RSS Campaign."
+ },
+ "monthly_send_date": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February."
+ }
+ },
+ "inner_properties": null,
+ "description": "The schedule for sending the RSS Campaign."
+ },
+ "constrain_rss_img": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to add CSS to images in the RSS feed to constrain their width in campaigns."
+ }
+ },
+ "inner_properties": null,
+ "description": "[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign."
+ },
+ "social_card": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url for the header image for the card."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A short summary of the campaign to display."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title for the card. Typically the subject line of the campaign."
+ }
+ },
+ "inner_properties": null,
+ "description": "The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/)."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Campaign\",\n \"description\": \"A summary of an individual campaign's settings and content.\",\n \"required\": [\n \"settings\"\n ],\n \"properties\": {\n \"recipients\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"List settings for the campaign.\",\n \"required\": [\n \"list_id\"\n ],\n \"properties\": {\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"List ID\",\n \"description\": \"The unique list id.\"\n },\n \"segment_opts\": {\n \"type\": \"object\",\n \"title\": \"Segment Options\",\n \"description\": \"An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.\",\n \"properties\": {\n \"saved_segment_id\": {\n \"type\": \"integer\",\n \"title\": \"Saved Segment ID\",\n \"description\": \"The id for an existing saved segment.\"\n },\n \"prebuilt_segment_id\": {\n \"type\": \"string\",\n \"title\": \"Prebuilt Segment Id\",\n \"description\": \"The prebuilt segment id, if a prebuilt segment has been designated for this campaign.\",\n \"example\": \"subscribers-female\"\n },\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match Type\",\n \"description\": \"Segment match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n },\n \"settings\": {\n \"type\": \"object\",\n \"title\": \"Campaign Settings\",\n \"description\": \"The settings for your campaign, including subject, from name, reply-to address, and more.\",\n \"required\": [\n \"subject_line\",\n \"from_name\",\n \"reply_to\"\n ],\n \"properties\": {\n \"subject_line\": {\n \"type\": \"string\",\n \"title\": \"Campaign Subject Line\",\n \"description\": \"The subject line for the campaign.\"\n },\n \"preview_text\": {\n \"type\": \"string\",\n \"title\": \"Campaign Preview Text\",\n \"description\": \"The preview text for the campaign.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Campaign Title\",\n \"description\": \"The title of the campaign.\"\n },\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"From Name\",\n \"description\": \"The 'from' name on the campaign (not an email address).\"\n },\n \"reply_to\": {\n \"type\": \"string\",\n \"title\": \"Reply To Address\",\n \"description\": \"The reply-to email address for the campaign.\"\n },\n \"use_conversation\": {\n \"type\": \"boolean\",\n \"title\": \"Conversation\",\n \"description\": \"Use Mailchimp Conversation feature to manage out-of-office replies.\"\n },\n \"to_name\": {\n \"type\": \"string\",\n \"title\": \"To Name\",\n \"description\": \"The campaign's custom 'To' name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/).\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"If the campaign is listed in a folder, the id for that folder.\"\n },\n \"authenticate\": {\n \"type\": \"boolean\",\n \"title\": \"Authentication\",\n \"description\": \"Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`.\"\n },\n \"auto_footer\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Footer\",\n \"description\": \"Automatically append Mailchimp's [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign.\"\n },\n \"inline_css\": {\n \"type\": \"boolean\",\n \"title\": \"Inline CSS\",\n \"description\": \"Automatically inline the CSS included with the campaign content.\"\n },\n \"auto_tweet\": {\n \"type\": \"boolean\",\n \"title\": \"Auto-Tweet\",\n \"description\": \"Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent.\"\n },\n \"auto_fb_post\": {\n \"type\": \"array\",\n \"title\": \"Auto Post to Facebook\",\n \"description\": \"An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"fb_comments\": {\n \"type\": \"boolean\",\n \"title\": \"Facebook Comments\",\n \"description\": \"Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`.\"\n },\n \"template_id\": {\n \"type\": \"integer\",\n \"title\": \"Template ID\",\n \"description\": \"The id of the template to use.\"\n }\n }\n },\n \"variate_settings\": {\n \"type\": \"object\",\n \"title\": \"A/B Test Options\",\n \"description\": \"The settings specific to A/B test campaigns.\",\n \"required\": [\n \"winner_criteria\"\n ],\n \"properties\": {\n \"winner_criteria\": {\n \"type\": \"string\",\n \"title\": \"Winning Criteria\",\n \"description\": \"The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send_time, winner_criteria is ignored. For Multivariate Campaigns with 'manual' as the winner_criteria, the winner must be chosen in the Mailchimp web application.\",\n \"enum\": [\n \"opens\",\n \"clicks\",\n \"manual\",\n \"total_revenue\"\n ]\n },\n \"wait_time\": {\n \"type\": \"integer\",\n \"title\": \"Wait Time\",\n \"description\": \"The number of minutes to wait before choosing the winning campaign. The value of wait_time must be greater than 0 and in whole hours, specified in minutes.\"\n },\n \"test_size\": {\n \"type\": \"integer\",\n \"title\": \"Test Size\",\n \"description\": \"The percentage of recipients to send the test combinations to, must be a value between 10 and 100.\"\n },\n \"subject_lines\": {\n \"type\": \"array\",\n \"title\": \"Subject Lines\",\n \"description\": \"The possible subject lines to test. If no subject lines are provided, settings.subject_line will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"send_times\": {\n \"type\": \"array\",\n \"title\": \"Send Times\",\n \"description\": \"The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send_times are provided to test, the test_size will be set to 100% and winner_criteria will be ignored.\",\n \"items\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"from_names\": {\n \"type\": \"array\",\n \"title\": \"From Names\",\n \"description\": \"The possible from names. The number of from_names provided must match the number of reply_to_addresses. If no from_names are provided, settings.from_name will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"reply_to_addresses\": {\n \"type\": \"array\",\n \"title\": \"Reply To Addresses\",\n \"description\": \"The possible reply-to addresses. The number of reply_to_addresses provided must match the number of from_names. If no reply_to_addresses are provided, settings.reply_to will be used.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Campaign Tracking Options\",\n \"description\": \"The tracking options for a campaign.\",\n \"properties\": {\n \"opens\": {\n \"type\": \"boolean\",\n \"title\": \"Opens\",\n \"description\": \"Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"html_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"HTML Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"text_clicks\": {\n \"type\": \"boolean\",\n \"title\": \"Plain-Text Click Tracking\",\n \"description\": \"Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.\"\n },\n \"goal_tracking\": {\n \"type\": \"boolean\",\n \"title\": \"Mailchimp Goal Tracking\",\n \"description\": \"Deprecated\"\n },\n \"ecomm360\": {\n \"type\": \"boolean\",\n \"title\": \"E-commerce Tracking\",\n \"description\": \"Whether to enable e-commerce tracking.\"\n },\n \"google_analytics\": {\n \"type\": \"string\",\n \"title\": \"Google Analytics Tracking\",\n \"description\": \"The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes).\"\n },\n \"clicktale\": {\n \"type\": \"string\",\n \"title\": \"ClickTale Analytics Tracking\",\n \"description\": \"The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes).\"\n },\n \"salesforce\": {\n \"type\": \"object\",\n \"title\": \"Salesforce CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Campaign\",\n \"description\": \"Create a campaign in a connected Salesforce account.\"\n },\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Salesforce Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n },\n \"capsule\": {\n \"type\": \"object\",\n \"title\": \"Capsule CRM Tracking\",\n \"description\": \"Deprecated\",\n \"properties\": {\n \"notes\": {\n \"type\": \"boolean\",\n \"title\": \"Capsule Note\",\n \"description\": \"Update contact notes for a campaign based on subscriber email addresses.\"\n }\n }\n }\n }\n },\n \"rss_opts\": {\n \"type\": \"object\",\n \"title\": \"RSS Options\",\n \"description\": \"[RSS](https://mailchimp.com/help/share-your-blog-posts-with-mailchimp/) options for a campaign.\",\n \"required\": [\n \"feed_url\",\n \"frequency\"\n ],\n \"properties\": {\n \"feed_url\": {\n \"type\": \"string\",\n \"title\": \"Feed URL\",\n \"format\": \"uri\",\n \"description\": \"The URL for the RSS feed.\"\n },\n \"frequency\": {\n \"type\": \"string\",\n \"title\": \"Frequency\",\n \"description\": \"The frequency of the RSS Campaign.\",\n \"enum\": [\n \"daily\",\n \"weekly\",\n \"monthly\"\n ]\n },\n \"schedule\": {\n \"type\": \"object\",\n \"title\": \"Sending Schedule\",\n \"description\": \"The schedule for sending the RSS Campaign.\",\n \"properties\": {\n \"hour\": {\n \"type\": \"integer\",\n \"minimum\": 0,\n \"maximum\": 23,\n \"title\": \"Sending Hour\",\n \"description\": \"The hour to send the campaign in local time. Acceptable hours are 0-23. For example, '4' would be 4am in [your account's default time zone](https://mailchimp.com/help/set-account-defaults/).\"\n },\n \"daily_send\": {\n \"type\": \"object\",\n \"title\": \"Daily Sending Days\",\n \"description\": \"The days of the week to send a daily RSS Campaign.\",\n \"properties\": {\n \"sunday\": {\n \"type\": \"boolean\",\n \"title\": \"Sunday\",\n \"description\": \"Sends the daily RSS Campaign on Sundays.\"\n },\n \"monday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Mondays.\"\n },\n \"tuesday\": {\n \"type\": \"boolean\",\n \"title\": \"tuesday\",\n \"description\": \"Sends the daily RSS Campaign on Tuesdays.\"\n },\n \"wednesday\": {\n \"type\": \"boolean\",\n \"title\": \"Monday\",\n \"description\": \"Sends the daily RSS Campaign on Wednesdays.\"\n },\n \"thursday\": {\n \"type\": \"boolean\",\n \"title\": \"Thursday\",\n \"description\": \"Sends the daily RSS Campaign on Thursdays.\"\n },\n \"friday\": {\n \"type\": \"boolean\",\n \"title\": \"Friday\",\n \"description\": \"Sends the daily RSS Campaign on Fridays.\"\n },\n \"saturday\": {\n \"type\": \"boolean\",\n \"title\": \"Saturday\",\n \"description\": \"Sends the daily RSS Campaign on Saturdays.\"\n }\n }\n },\n \"weekly_send_day\": {\n \"type\": \"string\",\n \"enum\": [\n \"sunday\",\n \"monday\",\n \"tuesday\",\n \"wednesday\",\n \"thursday\",\n \"friday\",\n \"saturday\"\n ],\n \"title\": \"Weekly Sending Day\",\n \"description\": \"The day of the week to send a weekly RSS Campaign.\"\n },\n \"monthly_send_date\": {\n \"type\": \"number\",\n \"minimum\": 0,\n \"maximum\": 31,\n \"title\": \"Monthly Sending Day\",\n \"description\": \"The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where '0' is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February.\"\n }\n }\n },\n \"constrain_rss_img\": {\n \"type\": \"boolean\",\n \"title\": \"Constrain RSS Images\",\n \"description\": \"Whether to add CSS to images in the RSS feed to constrain their width in campaigns.\"\n }\n }\n },\n \"social_card\": {\n \"type\": \"object\",\n \"title\": \"Campaign Social Card\",\n \"description\": \"The preview for the campaign, rendered by social networks like Facebook and Twitter. [Learn more](https://mailchimp.com/help/enable-and-customize-social-cards/).\",\n \"properties\": {\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The url for the header image for the card.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Campaign Description\",\n \"description\": \"A short summary of the campaign to display.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title for the card. Typically the subject line of the campaign.\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCart.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCart.json
new file mode 100644
index 00000000..154f9c5b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCart.json
@@ -0,0 +1,565 @@
+{
+ "name": "UpdateCart",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateCart@0.1.0",
+ "description": "Update a specific cart in an e-commerce store.\n\nThis tool updates a specified cart within a given e-commerce store using the Mailchimp Marketing API. Use it to modify cart details like items, quantities, or any other attributes available. Ideal for scenarios involving cart adjustments before customer checkout.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the store where the cart is located.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_identifier",
+ "required": true,
+ "description": "The unique identifier for the cart. Used to specify which cart to update in the e-commerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ },
+ {
+ "name": "cart_update_details",
+ "required": true,
+ "description": "JSON object containing the cart details to update including customer info, campaign ID, checkout URL, currency code, order total, tax total, and line items.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign associated with a cart."
+ },
+ "checkout_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ }
+ },
+ "description": "An array of the cart's line items."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdCartsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_identifier",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "cart_update_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign associated with a cart."
+ },
+ "checkout_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the cart uses."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total for the cart."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total tax for the cart."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ }
+ },
+ "description": "An array of the cart's line items."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart\",\n \"description\": \"Information about a specific cart.\",\n \"properties\": {\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"properties\": {\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign associated with a cart.\",\n \"example\": \"839488a60b\"\n },\n \"checkout_url\": {\n \"type\": \"string\",\n \"title\": \"Checkout URL\",\n \"description\": \"The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations.\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the cart uses.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The order total for the cart.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The total tax for the cart.\"\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Cart Line Items\",\n \"description\": \"An array of the cart's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCartLineItem.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCartLineItem.json
new file mode 100644
index 00000000..6214a5e0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCartLineItem.json
@@ -0,0 +1,305 @@
+{
+ "name": "UpdateCartLineItem",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateCartLineItem@0.1.0",
+ "description": "Update a specific cart line item in Mailchimp.\n\nUse this tool to modify an existing cart line item in a specified e-commerce store within Mailchimp. This can be used to adjust item details such as quantity or other attributes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the e-commerce store. Essential for specifying which store's cart line item to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "cart_id",
+ "required": true,
+ "description": "The unique identifier for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "cart_id"
+ },
+ {
+ "name": "cart_line_item_id",
+ "required": true,
+ "description": "The unique identifier for the line item within the cart to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "line_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": false,
+ "description": "A unique identifier for the product associated with the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_identifier",
+ "required": false,
+ "description": "A unique identifier for the product variant associated with the cart line item. Required to specify which variant to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_variant_id"
+ },
+ {
+ "name": "cart_line_item_quantity",
+ "required": false,
+ "description": "The quantity of the cart line item to update.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "quantity"
+ },
+ {
+ "name": "cart_line_item_price",
+ "required": false,
+ "description": "The price of a cart line item to be updated.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "price"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdCartsIdLinesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/carts/{cart_id}/lines/{line_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "cart_id",
+ "tool_parameter_name": "cart_id",
+ "description": "The id for the cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "line_id",
+ "tool_parameter_name": "cart_line_item_id",
+ "description": "The id for the line item of a cart.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of a cart."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "A unique identifier for the product associated with the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the cart line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_variant_id",
+ "tool_parameter_name": "product_variant_identifier",
+ "description": "A unique identifier for the product variant associated with the cart line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the cart line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "quantity",
+ "tool_parameter_name": "cart_line_item_quantity",
+ "description": "The quantity of a cart line item.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of a cart line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "price",
+ "tool_parameter_name": "cart_line_item_price",
+ "description": "The price of a cart line item.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a cart line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Cart Line Item\",\n \"description\": \"Information about a specific cart line item.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the cart line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Cart Line Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the cart line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of a cart line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a cart line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateContactInformation.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateContactInformation.json
new file mode 100644
index 00000000..1a5d73aa
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateContactInformation.json
@@ -0,0 +1,511 @@
+{
+ "name": "UpdateContactInformation",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateContactInformation@0.1.0",
+ "description": "Update information for an existing contact.\n\nUse this tool to update the details of an existing omni-channel contact in a specified audience in Mailchimp. Ideal for modifying contact information such as email, name, or other personal details.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "audience_id",
+ "required": true,
+ "description": "The unique ID for the audience to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "audience_id"
+ },
+ {
+ "name": "contact_id",
+ "required": true,
+ "description": "The unique ID for the contact to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "contact_id"
+ },
+ {
+ "name": "contact_details",
+ "required": true,
+ "description": "The JSON object containing details to update, such as language, email, SMS, merge fields, and tags for the contact. Include appropriate consent statuses and sources.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscribers detected language."
+ },
+ "email_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ },
+ "source": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the entity's source"
+ }
+ },
+ "inner_properties": null,
+ "description": "The source from which the parent's entity was created from."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "sms_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sms_phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "SMS Phone Number"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ },
+ "source": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the entity's source"
+ }
+ },
+ "inner_properties": null,
+ "description": "The source from which the parent's entity was created from."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ },
+ {
+ "name": "merge_field_validation_mode",
+ "required": false,
+ "description": "Specifies how merge field validation is handled. Options: `ignore_required_checks` (no error if fields missing), `strict` (errors if required fields not provided). Default is `strict`.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "merge_field_validation_mode"
+ },
+ {
+ "name": "data_processing_mode",
+ "required": false,
+ "description": "Specify `historical` to prevent triggering automations/webhooks, or `live` to trigger them for contact data changes.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "data_mode"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchAudienceContact'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/audiences/{audience_id}/contacts/{contact_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "merge_field_validation_mode",
+ "tool_parameter_name": "merge_field_validation_mode",
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Defines how merge field validation is handled. When set to `ignore_required_checks`, the API does not raise an error if required merge fields are missing from the request. When set to `strict`, the API enforces validation and returns an error if any required merge field is not provided. If this setting is omitted, `strict` is applied by default."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "data_mode",
+ "tool_parameter_name": "data_processing_mode",
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Indicates the data processing mode. In `historical` mode, contact data changes do not trigger automations or webhooks. In `live mode`, such changes do trigger them."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "audience_id",
+ "tool_parameter_name": "audience_id",
+ "description": "The unique ID for the audience.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the audience."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "contact_id",
+ "tool_parameter_name": "contact_id",
+ "description": "The unique id for the contact.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the contact."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "contact_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The subscribers detected language."
+ },
+ "email_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "consented",
+ "denied",
+ "confirmed",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ },
+ "source": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the entity's source"
+ }
+ },
+ "inner_properties": null,
+ "description": "The source from which the parent's entity was created from."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "sms_channel": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "sms_phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "SMS Phone Number"
+ },
+ "marketing_consent": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "consented",
+ "confirmed",
+ "unknown"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ },
+ "source": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the entity's source"
+ }
+ },
+ "inner_properties": null,
+ "description": "The source from which the parent's entity was created from."
+ }
+ },
+ "inner_properties": null,
+ "description": "A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values."
+ }
+ },
+ "inner_properties": null,
+ "description": null
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"description\": \"An instance of a contact.\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The subscribers detected language.\",\n \"example\": \"EN\"\n },\n \"email_channel\": {\n \"type\": \"object\",\n \"title\": \"Email Channel Details\",\n \"properties\": {\n \"email\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address\",\n \"example\": \"example@freddiemail.com\"\n },\n \"marketing_consent\": {\n \"description\": \"A contact's current consent status for email marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"type\": \"object\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"enum\": [\n \"consented\",\n \"denied\",\n \"confirmed\",\n \"unknown\"\n ]\n },\n \"source\": {\n \"type\": \"object\",\n \"title\": \"Source\",\n \"description\": \"The source from which the parent's entity was created from.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Entity source name\",\n \"description\": \"The name of the entity's source\"\n }\n }\n }\n }\n }\n }\n },\n \"sms_channel\": {\n \"type\": \"object\",\n \"title\": \"SMS Channel Details\",\n \"properties\": {\n \"sms_phone\": {\n \"type\": \"string\",\n \"title\": \"SMS Phone Number\",\n \"description\": \"SMS Phone Number\",\n \"example\": \"+16155550128\"\n },\n \"marketing_consent\": {\n \"description\": \"A contact's current consent status for SMS marketing communications. See the [Audiences (BETA) documentation](https://mailchimp.com/developer/marketing/docs/audiences-introduction) to learn about supported values.\",\n \"type\": \"object\",\n \"properties\": {\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Marketing Consent Status\",\n \"enum\": [\n \"consented\",\n \"confirmed\",\n \"unknown\"\n ]\n },\n \"source\": {\n \"type\": \"object\",\n \"title\": \"Source\",\n \"description\": \"The source from which the parent's entity was created from.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Entity source name\",\n \"description\": \"The name of the entity's source\"\n }\n }\n }\n }\n }\n }\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags\",\n \"description\": \"An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.\",\n \"items\": {\n \"type\": \"string\",\n \"title\": \"Tag Name\"\n },\n \"example\": [\n \"tag_to_add_1\",\n \"tag_to_add_2\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCustomerInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCustomerInfo.json
new file mode 100644
index 00000000..7c46a837
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateCustomerInfo.json
@@ -0,0 +1,385 @@
+{
+ "name": "UpdateCustomerInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateCustomerInfo@0.1.0",
+ "description": "Update a customer's information in an ecommerce store.\n\nUse this tool to update the information of a customer within a specific ecommerce store. Ideal for changes in customer details such as address, contact info, or other personal data.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store where the customer resides.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "customer_identifier",
+ "required": true,
+ "description": "The unique identifier for a customer in a specific store. Required to update customer information.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "customer_id"
+ },
+ {
+ "name": "customer_update_data",
+ "required": true,
+ "description": "JSON object containing customer details to update, such as name, address, company, and opt-in status.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdCustomersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/customers/{customer_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "customer_id",
+ "tool_parameter_name": "customer_identifier",
+ "description": "The id for the customer of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the customer of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "customer_update_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"properties\": {\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceOrder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceOrder.json
new file mode 100644
index 00000000..4259b044
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceOrder.json
@@ -0,0 +1,1805 @@
+{
+ "name": "UpdateEcommerceOrder",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateEcommerceOrder@0.1.0",
+ "description": "Add or update an order in an ecommerce store.\n\nUse this tool to either add a new order or update an existing order within an ecommerce store in Mailchimp Marketing. This tool is suitable when order details need to be adjusted or fresh orders are being added.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store in which the order is being added or updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_identifier",
+ "required": true,
+ "description": "The unique identifier for the order in the store. Used to specify which order to update or add.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "order_request_data",
+ "required": true,
+ "description": "The JSON object containing all order details such as customer info, financial status, and line items.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the shipping address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with the billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order"
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'putEcommerceStoresIdOrdersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "http_method": "PUT",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_identifier",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "order_request_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order."
+ },
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the customer. Limited to 50 characters."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's email address."
+ },
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign for an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total for the order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total for the order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the shipping address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with the billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order"
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the order line item."
+ },
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "product": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific product."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order\",\n \"description\": \"Information about a specific order.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Foreign ID\",\n \"description\": \"A unique identifier for the order.\"\n },\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. For existing customers include only the `id` parameter in the `customer` object body.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Customer Foreign ID\",\n \"description\": \"A unique identifier for the customer. Limited to 50 characters.\",\n \"maxLength\": 50\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The customer's email address.\"\n },\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"405 N Angier Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign for an order.\",\n \"example\": \"839488a60b\"\n },\n \"cart_id\": {\n \"type\": \"string\",\n \"title\": \"Cart ID\",\n \"description\": \"A cart id that the order was placed for.\",\n \"example\": \"cart-123\"\n },\n \"landing_site\": {\n \"type\": \"string\",\n \"title\": \"Landing Site\",\n \"description\": \"The URL for the page where the buyer landed when entering the shop.\",\n \"example\": \"http://www.example.com?source=abc\"\n },\n \"financial_status\": {\n \"type\": \"string\",\n \"title\": \"Financial Status\",\n \"description\": \"The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"fulfillment_status\": {\n \"type\": \"string\",\n \"title\": \"Fulfillment Status\",\n \"description\": \"The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The total for the order.\"\n },\n \"order_url\": {\n \"type\": \"string\",\n \"title\": \"Order URL\",\n \"description\": \"The URL for the order.\"\n },\n \"discount_total\": {\n \"type\": \"number\",\n \"title\": \"Discount Total\",\n \"description\": \"The total amount of the discounts to be applied to the price of the order.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The tax total for the order.\"\n },\n \"shipping_total\": {\n \"type\": \"number\",\n \"title\": \"Shipping Total\",\n \"description\": \"The shipping total for the order.\"\n },\n \"tracking_code\": {\n \"type\": \"string\",\n \"enum\": [\n \"prec\"\n ],\n \"title\": \"Tracking Code\",\n \"description\": \"The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.\"\n },\n \"processed_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Processed Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was processed in ISO 8601 format.\",\n \"example\": \"2024-09-10T17:27:43+00:00\"\n },\n \"cancelled_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Cancel Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being created.\",\n \"example\": \"2024-09-10T17:27:43+00:00\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Update Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was updated in ISO 8601 format.\",\n \"example\": \"2024-09-10T17:27:43+00:00\"\n },\n \"shipping_address\": {\n \"type\": \"object\",\n \"title\": \"Shipping Address\",\n \"description\": \"The shipping address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's shipping address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The shipping address for the order.\",\n \"example\": \"405 N Angier Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the shipping address.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the order's shipping address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the order's shipping address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state in the shipping address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the shipping address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country\",\n \"description\": \"The country in the shipping address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the shipping address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the shipping address location.\",\n \"example\": -84.362887\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the shipping address location.\",\n \"example\": 33.768526\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the order's shipping address.\",\n \"example\": \"+16155550128\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the shipping address.\"\n }\n }\n },\n \"billing_address\": {\n \"type\": \"object\",\n \"title\": \"Billing Address\",\n \"description\": \"The billing address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with the billing address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The billing address for the order.\",\n \"example\": \"405 N Angier Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the billing address.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the billing address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the billing address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province in the billing address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the billing address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country\",\n \"description\": \"The country in the billing address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the billing address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the billing address location.\",\n \"example\": -84.362887\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the billing address location.\",\n \"example\": 33.768526\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the billing address\",\n \"example\": \"+16155550128\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the billing address.\"\n }\n }\n },\n \"promos\": {\n \"type\": \"array\",\n \"title\": \"Promos\",\n \"description\": \"The promo codes applied on the order\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"code\",\n \"type\",\n \"amount_discounted\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Code\",\n \"description\": \"The Promo Code\"\n },\n \"amount_discounted\": {\n \"type\": \"number\",\n \"title\": \"Amount Discounted\",\n \"description\": \"The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n }\n }\n }\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Order Line Items\",\n \"description\": \"An array of the order's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Foreign ID\",\n \"description\": \"A unique identifier for the order line item.\"\n },\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"product\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n },\n \"outreach\": {\n \"type\": \"object\",\n \"title\": \"Outreach\",\n \"description\": \"The outreach associated with this order. For example, an email campaign or Facebook ad.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Outreach ID\",\n \"description\": \"A unique identifier for the outreach. Can be an email campaign ID.\",\n \"example\": \"839488a60b\"\n }\n }\n },\n \"tracking_number\": {\n \"type\": \"string\",\n \"title\": \"Tracking number\",\n \"description\": \"The tracking number associated with the order.\"\n },\n \"tracking_carrier\": {\n \"type\": \"string\",\n \"title\": \"Tracking carrier\",\n \"description\": \"The tracking carrier associated with the order.\"\n },\n \"tracking_url\": {\n \"type\": \"string\",\n \"title\": \"Tracking URL\",\n \"description\": \"The tracking URL associated with the order.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceProduct.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceProduct.json
new file mode 100644
index 00000000..e2c8684c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceProduct.json
@@ -0,0 +1,547 @@
+{
+ "name": "UpdateEcommerceProduct",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateEcommerceProduct@0.1.0",
+ "description": "Update a specific product in an ecommerce store.\n\nUse this tool to update details of a specific product in an ecommerce store. It is useful when you need to modify product information such as pricing, inventory, or descriptions.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier of the store to update the product in.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_id",
+ "required": true,
+ "description": "The unique identifier for the product within a store. This is used to specify which product needs to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "ecommerce_product_update_data",
+ "required": true,
+ "description": "JSON object containing details to update a product, including ID, title, and variants.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'putEcommerceStoresIdProductsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "http_method": "PUT",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_id",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "ecommerce_product_update_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"required\": [\n \"id\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Foreign ID\",\n \"description\": \"A unique identifier for the product.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"required\": [\n \"id\",\n \"url\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceStore.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceStore.json
new file mode 100644
index 00000000..96392cf4
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEcommerceStore.json
@@ -0,0 +1,480 @@
+{
+ "name": "UpdateEcommerceStore",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateEcommerceStore@0.1.0",
+ "description": "Update an e-commerce store's details.\n\nThis tool is used to update the information of an existing e-commerce store in Mailchimp. Call this when you need to modify store details, such as the store name or other attributes.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store you want to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "store_update_details",
+ "required": true,
+ "description": "Details of the e-commerce store to update, including attributes like name, platform, domain, and address.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the store."
+ },
+ "platform": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store domain."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address for the store."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "money_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc."
+ },
+ "primary_locale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The primary locale for the store. For example: `en`, `de`, etc."
+ },
+ "timezone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The timezone for the store."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store phone number."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's mailing address."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the store's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the store is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the store's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for to the store's country."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude of the store location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude of the store location."
+ }
+ },
+ "inner_properties": null,
+ "description": "The store address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "store_update_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the store."
+ },
+ "platform": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The e-commerce platform of the store."
+ },
+ "domain": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store domain."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations)."
+ },
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address for the store."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "money_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The currency format for the store. For example: `$`, `\u00a3`, etc."
+ },
+ "primary_locale": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The primary locale for the store. For example: `en`, `de`, etc."
+ },
+ "timezone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The timezone for the store."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store phone number."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's mailing address."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the store's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the store is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the store's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for to the store's country."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude of the store location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude of the store location."
+ }
+ },
+ "inner_properties": null,
+ "description": "The store address."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Store\",\n \"description\": \"An individual store in an account.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Store Name\",\n \"description\": \"The name of the store.\",\n \"example\": \"Freddie's Cat Hat Emporium\"\n },\n \"platform\": {\n \"type\": \"string\",\n \"title\": \"Platform\",\n \"description\": \"The e-commerce platform of the store.\"\n },\n \"domain\": {\n \"type\": \"string\",\n \"title\": \"Domain\",\n \"description\": \"The store domain.\",\n \"example\": \"example.com\"\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"Whether to disable automations because the store is currently [syncing](https://mailchimp.com/developer/marketing/docs/e-commerce/#pausing-store-automations).\"\n },\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"The email address for the store.\",\n \"example\": \"freddie@mailchimp.com\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\",\n \"example\": \"USD\"\n },\n \"money_format\": {\n \"type\": \"string\",\n \"title\": \"Money Format\",\n \"description\": \"The currency format for the store. For example: `$`, `\\u00a3`, etc.\",\n \"example\": \"$\"\n },\n \"primary_locale\": {\n \"type\": \"string\",\n \"title\": \"Primary Locale\",\n \"description\": \"The primary locale for the store. For example: `en`, `de`, etc.\",\n \"example\": \"fr\"\n },\n \"timezone\": {\n \"type\": \"string\",\n \"title\": \"Timezone\",\n \"description\": \"The timezone for the store.\",\n \"example\": \"Eastern\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone\",\n \"description\": \"The store phone number.\",\n \"example\": \"+16155550128\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The store address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The store's mailing address.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the store's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the store is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The store's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the store's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The store's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The store's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for to the store's country.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude of the store location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude of the store location.\",\n \"example\": 45.427408\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEmailTemplate.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEmailTemplate.json
new file mode 100644
index 00000000..1e05b673
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateEmailTemplate.json
@@ -0,0 +1,206 @@
+{
+ "name": "UpdateEmailTemplate",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateEmailTemplate@0.1.0",
+ "description": "Update the details of an existing email template.\n\nUse this tool to update the name, HTML content, or folder ID of an existing email template in Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_unique_id",
+ "required": true,
+ "description": "The unique identifier for the email template to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "template_id"
+ },
+ {
+ "name": "template_name",
+ "required": true,
+ "description": "The name of the email template to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the template."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "template_html_content",
+ "required": true,
+ "description": "The raw HTML for the template using Mailchimp's Template Language.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "html"
+ },
+ {
+ "name": "destination_folder_id",
+ "required": false,
+ "description": "The ID of the folder where the template is currently located.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder the template is currently in."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchTemplatesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/templates/{template_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "template_id",
+ "tool_parameter_name": "template_unique_id",
+ "description": "The unique id for the template.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "template_name",
+ "description": "The name of the template.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the template."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "destination_folder_id",
+ "description": "The id of the folder the template is currently in.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder the template is currently in."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "html",
+ "tool_parameter_name": "template_html_content",
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Instance\",\n \"description\": \"Information about a specific template.\",\n \"required\": [\n \"name\",\n \"html\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Template Name\",\n \"description\": \"The name of the template.\",\n \"example\": \"Freddie's Jokes\"\n },\n \"folder_id\": {\n \"type\": \"string\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder the template is currently in.\",\n \"example\": \"a4b830b\"\n },\n \"html\": {\n \"type\": \"string\",\n \"title\": \"Template HTML\",\n \"description\": \"The raw HTML for the template. We support the Mailchimp [Template Language](https://mailchimp.com/help/getting-started-with-mailchimps-template-language/) in any HTML code passed via the API.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateFileManagerFile.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateFileManagerFile.json
new file mode 100644
index 00000000..d911b72e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateFileManagerFile.json
@@ -0,0 +1,173 @@
+{
+ "name": "UpdateFileManagerFile",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateFileManagerFile@0.1.0",
+ "description": "Update a file in the Mailchimp File Manager.\n\nUse this tool to update an existing file in Mailchimp's File Manager by providing the file ID. It is useful for changing file details or replacing content.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_manager_file_id",
+ "required": true,
+ "description": "The unique identifier for the File Manager file to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "file_id"
+ },
+ {
+ "name": "folder_id",
+ "required": false,
+ "description": "The ID of the folder. Set to `0` to remove a file from its current folder.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "file_name",
+ "required": false,
+ "description": "Specify the new name for the file in the File Manager.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchFileManagerFilesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/files/{file_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "file_id",
+ "tool_parameter_name": "file_manager_file_id",
+ "description": "The unique id for the File Manager file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager file."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "folder_id",
+ "description": "The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "file_name",
+ "description": "The name of the file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the file."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery File\",\n \"description\": \"An individual file listed in the File Manager.\",\n \"properties\": {\n \"folder_id\": {\n \"type\": \"integer\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder. Setting `folder_id` to `0` will remove a file from its current folder.\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"File Name\",\n \"description\": \"The name of the file.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateFileManagerFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateFileManagerFolder.json
new file mode 100644
index 00000000..f50037dc
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateFileManagerFolder.json
@@ -0,0 +1,140 @@
+{
+ "name": "UpdateFileManagerFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateFileManagerFolder@0.1.0",
+ "description": "Update a specific File Manager folder in Mailchimp.\n\nUse this tool to update the details of a specific folder in Mailchimp's File Manager. Useful for organizing files within the platform.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_manager_folder_id",
+ "required": true,
+ "description": "The unique identifier for the File Manager folder to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "folder_name",
+ "required": true,
+ "description": "The new name for the File Manager folder. It should be a string value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchFileManagerFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/folders/{folder_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "file_manager_folder_id",
+ "description": "The unique id for the File Manager folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the File Manager folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "folder_name",
+ "description": "The name of the folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery Folder\",\n \"description\": \"An individual folder listed in the File Manager.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateInterestCategory.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateInterestCategory.json
new file mode 100644
index 00000000..4b18a10f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateInterestCategory.json
@@ -0,0 +1,249 @@
+{
+ "name": "UpdateInterestCategory",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateInterestCategory@0.1.0",
+ "description": "Update a specific interest category in Mailchimp.\n\nUse this tool to update the details of a specific interest category within a Mailchimp list. Ideal for modifying category information to better organize your audience.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "required": true,
+ "description": "The unique ID for the interest category to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "interest_category_title",
+ "required": true,
+ "description": "The text description of this interest category for signup forms, often phrased as a question.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "title"
+ },
+ {
+ "name": "category_display_type",
+ "required": true,
+ "description": "Specifies how the category's interests are shown on signup forms. Options: 'checkboxes', 'dropdown', 'radio', 'hidden'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines how this category\u2019s interests appear on signup forms."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "type"
+ },
+ {
+ "name": "category_display_order",
+ "required": false,
+ "description": "The numerical order for displaying the category. Lower numbers appear first.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "display_order"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsIdInterestCategoriesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "title",
+ "tool_parameter_name": "interest_category_title",
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The text description of this category. This field appears on signup forms and is often phrased as a question."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "display_order",
+ "tool_parameter_name": "category_display_order",
+ "description": "The order that the categories are displayed in the list. Lower numbers display first.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the categories are displayed in the list. Lower numbers display first."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "type",
+ "tool_parameter_name": "category_display_type",
+ "description": "Determines how this category\u2019s interests appear on signup forms.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "checkboxes",
+ "dropdown",
+ "radio",
+ "hidden"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Determines how this category\u2019s interests appear on signup forms."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest Category\",\n \"description\": \"Interest categories organize interests, which are used to group subscribers based on their preferences. These correspond to Group Titles the application.\",\n \"required\": [\n \"title\",\n \"type\"\n ],\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The text description of this category. This field appears on signup forms and is often phrased as a question.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the categories are displayed in the list. Lower numbers display first.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Display Type\",\n \"description\": \"Determines how this category\\u2019s interests appear on signup forms.\",\n \"enum\": [\n \"checkboxes\",\n \"dropdown\",\n \"radio\",\n \"hidden\"\n ]\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateInterestGroupName.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateInterestGroupName.json
new file mode 100644
index 00000000..af387931
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateInterestGroupName.json
@@ -0,0 +1,239 @@
+{
+ "name": "UpdateInterestGroupName",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateInterestGroupName@0.1.0",
+ "description": "Update group names in a specific interest category.\n\nUse this tool to update the names of interest groups within a specified category on a Mailchimp list. This is helpful for managing and organizing subscriber interests.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the list to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "interest_category_id",
+ "required": true,
+ "description": "The unique ID for the interest category to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_category_id"
+ },
+ {
+ "name": "specific_interest_id",
+ "required": true,
+ "description": "The unique ID for the specific interest group name within the category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "interest_id"
+ },
+ {
+ "name": "interest_group_name",
+ "required": true,
+ "description": "The new name for the interest group, displayed publicly on subscription forms.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "interest_display_order",
+ "required": false,
+ "description": "The numerical order in which the interest should appear in a list.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The display order for interests."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "display_order"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsIdInterestCategoriesIdInterestsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/interest-categories/{interest_category_id}/interests/{interest_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_category_id",
+ "tool_parameter_name": "interest_category_id",
+ "description": "The unique ID for the interest category.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the interest category."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "interest_id",
+ "tool_parameter_name": "specific_interest_id",
+ "description": "The specific interest or 'group name'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The specific interest or 'group name'."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "interest_group_name",
+ "description": "The name of the interest. This can be shown publicly on a subscription form.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the interest. This can be shown publicly on a subscription form."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "display_order",
+ "tool_parameter_name": "interest_display_order",
+ "description": "The display order for interests.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The display order for interests."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Interest\",\n \"description\": \"Assign subscribers to interests to group them together. Interests are referred to as 'group names' in the Mailchimp application.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Interest Name\",\n \"description\": \"The name of the interest. This can be shown publicly on a subscription form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The display order for interests.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateLandingPage.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateLandingPage.json
new file mode 100644
index 00000000..a8186333
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateLandingPage.json
@@ -0,0 +1,338 @@
+{
+ "name": "UpdateLandingPage",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateLandingPage@0.1.0",
+ "description": "Update a landing page on Mailchimp.\n\nUse this tool to update an existing landing page on Mailchimp. Provide the necessary details for the landing page you wish to update.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "landing_page_id",
+ "required": true,
+ "description": "The unique ID for the landing page to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "page_id"
+ },
+ {
+ "name": "landing_page_name",
+ "required": false,
+ "description": "The name for the landing page to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "landing_page_title",
+ "required": false,
+ "description": "The title displayed in the browser's title bar for the landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "title"
+ },
+ {
+ "name": "landing_page_description",
+ "required": false,
+ "description": "Provide a description for the landing page. This text summarizes the page's purpose and content.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "description"
+ },
+ {
+ "name": "store_id",
+ "required": false,
+ "description": "The ID of the store associated with this landing page. It must match an existing store in the Mailchimp account.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the store associated with this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "list_id_for_landing_page",
+ "required": false,
+ "description": "The ID of the list associated with this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list's ID associated with this landing page."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "enable_tracking_with_mailchimp",
+ "required": false,
+ "description": "Enable cookie tracking to monitor unique visitors and calculate conversion rates. More info: [here](https://mailchimp.com/help/use-track-mailchimp/).",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "tracking.track_with_mailchimp"
+ },
+ {
+ "name": "enable_restricted_data_processing",
+ "required": false,
+ "description": "Set to true to enable Google\u2019s restricted data processing in compliance with the CCPA for this landing page.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "tracking.enable_restricted_data_processing"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchLandingPageId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/landing-pages/{page_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "page_id",
+ "tool_parameter_name": "landing_page_id",
+ "description": "The unique id for the page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the page."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "landing_page_name",
+ "description": "The name of this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "title",
+ "tool_parameter_name": "landing_page_title",
+ "description": "The title of this landing page seen in the browser's title bar.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of this landing page seen in the browser's title bar."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "description",
+ "tool_parameter_name": "landing_page_description",
+ "description": "The description of this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The ID of the store associated with this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The ID of the store associated with this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id_for_landing_page",
+ "description": "The list's ID associated with this landing page.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list's ID associated with this landing page."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "tracking.track_with_mailchimp",
+ "tool_parameter_name": "enable_tracking_with_mailchimp",
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/)."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "tracking.enable_restricted_data_processing",
+ "tool_parameter_name": "enable_restricted_data_processing",
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/)."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Landing Page\",\n \"description\": \"A summary of an individual page's properties.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Landing Page Name\",\n \"description\": \"The name of this landing page.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Landing Page title\",\n \"description\": \"The title of this landing page seen in the browser's title bar.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Landing Page description\",\n \"description\": \"The description of this landing page.\"\n },\n \"store_id\": {\n \"type\": \"string\",\n \"title\": \"Store ID\",\n \"description\": \"The ID of the store associated with this landing page.\"\n },\n \"list_id\": {\n \"type\": \"string\",\n \"title\": \"Landing Page list id\",\n \"description\": \"The list's ID associated with this landing page.\"\n },\n \"tracking\": {\n \"type\": \"object\",\n \"title\": \"Tracking Settings\",\n \"description\": \"The tracking settings applied to this landing page.\",\n \"properties\": {\n \"track_with_mailchimp\": {\n \"type\": \"boolean\",\n \"title\": \"Track with Mailchimp\",\n \"description\": \"Use cookies to track unique visitors and calculate overall conversion rate. Learn more [here](https://mailchimp.com/help/use-track-mailchimp/).\"\n },\n \"enable_restricted_data_processing\": {\n \"type\": \"boolean\",\n \"title\": \"Enable restricted data processing\",\n \"description\": \"Google offers restricted data processing in connection with the California Consumer Privacy Act (CCPA) to restrict how Google uses certain identifiers and other data processed in the provision of its services. You can learn more about Google's restricted data processing within Google Ads [here](https://privacy.google.com/businesses/rdp/).\"\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListMemberInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListMemberInfo.json
new file mode 100644
index 00000000..efd779c6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListMemberInfo.json
@@ -0,0 +1,494 @@
+{
+ "name": "UpdateListMemberInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateListMemberInfo@0.1.0",
+ "description": "Update information for a specific list member in Mailchimp.\n\nUse this tool to update the details of a particular member on a Mailchimp list. It should be called when you need to modify any member's information, such as their email address or other personal details, within a given list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list. This ID identifies which list to update the member information in.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash of the lowercase list member's email, email address, or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "member_information_data",
+ "required": true,
+ "description": "JSON object containing the member's information to update, including email, status, merge fields, etc.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ },
+ {
+ "name": "skip_merge_validation",
+ "required": false,
+ "description": "Set to true to allow member data without merge field values, even if usually required. Defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "skip_merge_validation"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsIdMembersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "skip_merge_validation",
+ "tool_parameter_name": "skip_merge_validation",
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If skip_merge_validation is true, member data will be accepted without merge field values, even if the merge field is usually required. This defaults to false."
+ },
+ "accepted_as": "query",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "member_information_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "email_address": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Email address for a subscriber."
+ },
+ "email_type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of email this member asked to get ('html' or 'text')."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "subscribed",
+ "unsubscribed",
+ "cleaned",
+ "pending"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Subscriber's current status."
+ },
+ "merge_fields": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure."
+ },
+ "interests": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The key of this object's properties is the ID of the interest in question."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/)."
+ },
+ "vip": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber."
+ },
+ "location": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location latitude."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The location longitude."
+ }
+ },
+ "inner_properties": null,
+ "description": "Subscriber location information."
+ },
+ "marketing_permissions": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "marketing_permission_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the marketing permission on the list"
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "If the subscriber has opted-in to the marketing permission."
+ }
+ },
+ "description": "The marketing permissions for the subscriber."
+ },
+ "ip_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "IP address the subscriber signed up from."
+ },
+ "timestamp_signup": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber signed up for the list in ISO 8601 format."
+ },
+ "ip_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The IP address the subscriber used to confirm their opt-in status."
+ },
+ "timestamp_opt": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the subscriber confirmed their opt-in status in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add List Members\",\n \"description\": \"Individuals who are currently or have been previously subscribed to this list, including members who have bounced or unsubscribed.\",\n \"properties\": {\n \"email_address\": {\n \"type\": \"string\",\n \"title\": \"Email Address\",\n \"description\": \"Email address for a subscriber.\"\n },\n \"email_type\": {\n \"type\": \"string\",\n \"title\": \"Email Type\",\n \"description\": \"Type of email this member asked to get ('html' or 'text').\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"Subscriber's current status.\",\n \"enum\": [\n \"subscribed\",\n \"unsubscribed\",\n \"cleaned\",\n \"pending\"\n ]\n },\n \"merge_fields\": {\n \"type\": \"object\",\n \"title\": \"Merge Fields\",\n \"description\": \"A dictionary of merge fields where the keys are the merge tags. See the [Merge Fields documentation](https://mailchimp.com/developer/marketing/docs/merge-fields/#structure) for more about the structure.\",\n \"additionalProperties\": {\n \"description\": \"This object's keys are merge tags (like FNAME). It's values are the values to be added to the merge field.\"\n }\n },\n \"interests\": {\n \"type\": \"object\",\n \"title\": \"Subscriber Interests\",\n \"description\": \"The key of this object's properties is the ID of the interest in question.\",\n \"additionalProperties\": {\n \"type\": \"boolean\",\n \"title\": \"Interest Value\",\n \"description\": \"Keys are interest IDs, values are booleans that describe whether the list member is in that group or not.\"\n }\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"If set/detected, the [subscriber's language](https://mailchimp.com/help/view-and-edit-contact-languages/).\"\n },\n \"vip\": {\n \"type\": \"boolean\",\n \"title\": \"VIP\",\n \"description\": \"[VIP status](https://mailchimp.com/help/designate-and-send-to-vip-contacts/) for subscriber.\"\n },\n \"location\": {\n \"type\": \"object\",\n \"title\": \"Location\",\n \"description\": \"Subscriber location information.\",\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The location latitude.\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The location longitude.\"\n }\n }\n },\n \"marketing_permissions\": {\n \"type\": \"array\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"The marketing permissions for the subscriber.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Marketing Permission\",\n \"description\": \"A single marketing permission a subscriber has either opted-in to or opted-out of.\",\n \"properties\": {\n \"marketing_permission_id\": {\n \"type\": \"string\",\n \"title\": \"Marketing Permission ID\",\n \"description\": \"The id for the marketing permission on the list\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"If the subscriber has opted-in to the marketing permission.\"\n }\n }\n }\n },\n \"ip_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup IP\",\n \"description\": \"IP address the subscriber signed up from.\"\n },\n \"timestamp_signup\": {\n \"type\": \"string\",\n \"title\": \"Signup Timestamp\",\n \"description\": \"The date and time the subscriber signed up for the list in ISO 8601 format.\",\n \"format\": \"date-time\"\n },\n \"ip_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in IP\",\n \"description\": \"The IP address the subscriber used to confirm their opt-in status.\"\n },\n \"timestamp_opt\": {\n \"type\": \"string\",\n \"title\": \"Opt-in Timestamp\",\n \"description\": \"The date and time the subscriber confirmed their opt-in status in ISO 8601 format.\",\n \"format\": \"date-time\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListMemberTags.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListMemberTags.json
new file mode 100644
index 00000000..5c713622
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListMemberTags.json
@@ -0,0 +1,247 @@
+{
+ "name": "UpdateListMemberTags",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateListMemberTags@0.1.0",
+ "description": "Add or remove tags from a Mailchimp list member.\n\nUse this tool to manage tags for a specific member in a Mailchimp list. It allows adding new tags or removing existing ones. If a non-existent tag is added and marked as 'active', it will be created automatically.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the Mailchimp list to update tags for a member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "subscriber_email_hash",
+ "required": true,
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "tags_update_request",
+ "required": true,
+ "description": "JSON object containing tags and their status to be added or removed from a list member. Also includes optional synchronization control with 'is_syncing'.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the tag."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "inactive",
+ "active"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status for the tag on the member, pass in active to add a tag or inactive to remove it."
+ }
+ },
+ "description": "A list of tags assigned to the list member."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When is_syncing is true, automations based on the tags in the request will not fire"
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListMemberTags'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/tags",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "subscriber_email_hash",
+ "description": "The MD5 hash of the lowercase version of the list member's email address.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "tags_update_request",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tags": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the tag."
+ },
+ "status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "inactive",
+ "active"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The status for the tag on the member, pass in active to add a tag or inactive to remove it."
+ }
+ },
+ "description": "A list of tags assigned to the list member."
+ },
+ "is_syncing": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "When is_syncing is true, automations based on the tags in the request will not fire"
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Member Tags\",\n \"description\": \"A list of tags assigned to a list member.\",\n \"required\": [\n \"tags\"\n ],\n \"properties\": {\n \"tags\": {\n \"type\": \"array\",\n \"title\": \"Tags\",\n \"description\": \"A list of tags assigned to the list member.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"Member Tag\",\n \"description\": \"Add or remove tags on a member by declaring a tag either active or inactive on a member.\",\n \"required\": [\n \"name\",\n \"status\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Tag Name\",\n \"description\": \"The name of the tag.\"\n },\n \"status\": {\n \"type\": \"string\",\n \"title\": \"Status\",\n \"description\": \"The status for the tag on the member, pass in active to add a tag or inactive to remove it.\",\n \"enum\": [\n \"inactive\",\n \"active\"\n ]\n }\n }\n }\n },\n \"is_syncing\": {\n \"type\": \"boolean\",\n \"title\": \"Is Syncing\",\n \"description\": \"When is_syncing is true, automations based on the tags in the request will not fire\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListSegment.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListSegment.json
new file mode 100644
index 00000000..0d2b839e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateListSegment.json
@@ -0,0 +1,206 @@
+{
+ "name": "UpdateListSegment",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateListSegment@0.1.0",
+ "description": "Batch update members in a Mailchimp list segment.\n\nUse this tool to batch add or remove members in a specified static segment of a Mailchimp list. This is useful for efficiently managing segment membership within a list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "required": true,
+ "description": "The unique ID of the segment in the Mailchimp list for member updates.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "segment_id"
+ },
+ {
+ "name": "emails_to_add_to_segment",
+ "required": false,
+ "description": "An array of email addresses to add to the specified static segment. Only existing list emails will be added. Limit of 500.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "members_to_add"
+ },
+ {
+ "name": "emails_to_remove_from_segment",
+ "required": false,
+ "description": "An array of up to 500 emails to remove from the static segment. Emails not in the list will be ignored.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "members_to_remove"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postListsIdSegmentsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments/{segment_id}",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "segment_id",
+ "tool_parameter_name": "segment_unique_id",
+ "description": "The unique id for the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "members_to_add",
+ "tool_parameter_name": "emails_to_add_to_segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "members_to_remove",
+ "tool_parameter_name": "emails_to_remove_from_segment",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Members to add/remove to/from a static segment\",\n \"description\": \"Members to add/remove to/from a static segment\",\n \"properties\": {\n \"members_to_add\": {\n \"type\": \"array\",\n \"title\": \"Members to add to the static segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"members_to_remove\": {\n \"type\": \"array\",\n \"title\": \"Members to remove from the static segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. A maximum of 500 members can be sent.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMailchimpListSettings.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMailchimpListSettings.json
new file mode 100644
index 00000000..19a875a0
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMailchimpListSettings.json
@@ -0,0 +1,498 @@
+{
+ "name": "UpdateMailchimpListSettings",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateMailchimpListSettings@0.1.0",
+ "description": "Update settings for a specific Mailchimp list.\n\nUse this tool to modify the settings of a specific list in Mailchimp. It should be called when you need to update a list's configuration or preferences.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "mailchimp_list_id",
+ "required": true,
+ "description": "The unique ID of the Mailchimp list to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "list_settings_update_payload",
+ "required": true,
+ "description": "JSON object containing new settings for the Mailchimp list. Include properties like name, contact info, permission_reminder, use_archive_bar, campaign_defaults, notification emails, email_type_option, double_optin, and marketing_permissions.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the list."
+ },
+ "contact": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the list contact."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws."
+ },
+ "permission_reminder": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list."
+ },
+ "notify_on_subscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "mailchimp_list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "list_settings_update_payload",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the list."
+ },
+ "contact": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company name for the list."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The street address for the list contact."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city for the list contact."
+ },
+ "state": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state for the list contact."
+ },
+ "zip": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code for the list contact."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A two-character ISO3166 country code. Defaults to US if invalid."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the list contact."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws."
+ },
+ "permission_reminder": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list."
+ },
+ "use_archive_bar": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default."
+ },
+ "campaign_defaults": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "from_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from name for campaigns sent to this list."
+ },
+ "from_email": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default from email for campaigns sent to this list."
+ },
+ "subject": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default subject line for campaigns sent to this list."
+ },
+ "language": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default language for this lists's forms."
+ }
+ },
+ "inner_properties": null,
+ "description": "[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list."
+ },
+ "notify_on_subscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "notify_on_unsubscribe": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to."
+ },
+ "email_type_option": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup."
+ },
+ "double_optin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not to require the subscriber to confirm subscription via email."
+ },
+ "marketing_permissions": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether or not the list has marketing permissions (eg. GDPR) enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Subscriber List\",\n \"description\": \"Information about a specific list.\",\n \"required\": [\n \"name\",\n \"permission_reminder\",\n \"email_type_option\",\n \"contact\",\n \"campaign_defaults\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"List Name\",\n \"description\": \"The name of the list.\"\n },\n \"contact\": {\n \"type\": \"object\",\n \"title\": \"List Contact\",\n \"description\": \"[Contact information displayed in campaign footers](https://mailchimp.com/help/about-campaign-footers/) to comply with international spam laws.\",\n \"required\": [\n \"company\",\n \"address1\",\n \"city\",\n \"state\",\n \"zip\",\n \"country\"\n ],\n \"properties\": {\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company Name\",\n \"description\": \"The company name for the list.\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address\",\n \"description\": \"The street address for the list contact.\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City\",\n \"description\": \"The city for the list contact.\"\n },\n \"state\": {\n \"type\": \"string\",\n \"title\": \"State\",\n \"description\": \"The state for the list contact.\"\n },\n \"zip\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code for the list contact.\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"A two-character ISO3166 country code. Defaults to US if invalid.\"\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the list contact.\"\n }\n }\n },\n \"permission_reminder\": {\n \"type\": \"string\",\n \"title\": \"Permission Reminder\",\n \"description\": \"The [permission reminder](https://mailchimp.com/help/edit-the-permission-reminder/) for the list.\"\n },\n \"use_archive_bar\": {\n \"type\": \"boolean\",\n \"title\": \"Use Archive Bar\",\n \"description\": \"Whether campaigns for this list use the [Archive Bar](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) in archives by default.\",\n \"default\": false\n },\n \"campaign_defaults\": {\n \"type\": \"object\",\n \"title\": \"Campaign Defaults\",\n \"description\": \"[Default values for campaigns](https://mailchimp.com/help/edit-your-emails-subject-preview-text-from-name-or-from-email-address/) created for this list.\",\n \"required\": [\n \"from_name\",\n \"from_email\",\n \"subject\",\n \"language\"\n ],\n \"properties\": {\n \"from_name\": {\n \"type\": \"string\",\n \"title\": \"Sender's Name\",\n \"description\": \"The default from name for campaigns sent to this list.\"\n },\n \"from_email\": {\n \"type\": \"string\",\n \"title\": \"Sender's Email Address\",\n \"description\": \"The default from email for campaigns sent to this list.\"\n },\n \"subject\": {\n \"type\": \"string\",\n \"title\": \"Subject\",\n \"description\": \"The default subject line for campaigns sent to this list.\"\n },\n \"language\": {\n \"type\": \"string\",\n \"title\": \"Language\",\n \"description\": \"The default language for this lists's forms.\"\n }\n }\n },\n \"notify_on_subscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Subscribe\",\n \"description\": \"The email address to send [subscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"notify_on_unsubscribe\": {\n \"type\": \"string\",\n \"title\": \"Notify on Unsubscribe\",\n \"description\": \"The email address to send [unsubscribe notifications](https://mailchimp.com/help/change-subscribe-and-unsubscribe-notifications/) to.\",\n \"default\": false\n },\n \"email_type_option\": {\n \"type\": \"boolean\",\n \"title\": \"Email Type Option\",\n \"description\": \"Whether the list supports [multiple formats for emails](https://mailchimp.com/help/change-audience-name-defaults/). When set to `true`, subscribers can choose whether they want to receive HTML or plain-text emails. When set to `false`, subscribers will receive HTML emails, with a plain-text alternative backup.\"\n },\n \"double_optin\": {\n \"type\": \"boolean\",\n \"title\": \"Double Opt In\",\n \"description\": \"Whether or not to require the subscriber to confirm subscription via email.\",\n \"default\": false\n },\n \"marketing_permissions\": {\n \"type\": \"boolean\",\n \"title\": \"Marketing Permissions\",\n \"description\": \"Whether or not the list has marketing permissions (eg. GDPR) enabled.\",\n \"default\": false\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMailchimpSegment.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMailchimpSegment.json
new file mode 100644
index 00000000..6ef38ff5
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMailchimpSegment.json
@@ -0,0 +1,278 @@
+{
+ "name": "UpdateMailchimpSegment",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateMailchimpSegment@0.1.0",
+ "description": "Update the details of a specific segment in a Mailchimp list.\n\nThis tool updates a specific segment within a designated list in Mailchimp. It should be called when there is a need to modify segment criteria or details in an existing list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the list to update the segment in. This ID is required to identify the list containing the target segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "segment_unique_id",
+ "required": true,
+ "description": "The unique ID for the segment to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "segment_id"
+ },
+ {
+ "name": "segment_name",
+ "required": true,
+ "description": "The new name for the segment to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the segment."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "static_email_list",
+ "required": false,
+ "description": "An array of emails for the static segment. Emails not on the list are ignored. An empty array resets the segment, removing all members. Cannot be used with 'options'.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "static_segment"
+ },
+ {
+ "name": "segment_match_type",
+ "required": false,
+ "description": "Determines if any or all conditions must be met for the segment. Allowed values: 'any', 'all'.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Match type."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "options.match"
+ },
+ {
+ "name": "segment_conditions",
+ "required": false,
+ "description": "An array of conditions that define the segment criteria. Each condition should be a JSON object specifying the targeting parameters.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of segment conditions."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "options.conditions"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsIdSegmentsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/segments/{segment_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "segment_id",
+ "tool_parameter_name": "segment_unique_id",
+ "description": "The unique id for the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the segment."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "segment_name",
+ "description": "The name of the segment.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the segment."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "static_segment",
+ "tool_parameter_name": "static_email_list",
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "options.match",
+ "tool_parameter_name": "segment_match_type",
+ "description": "Match type.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "any",
+ "all"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Match type."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "options.conditions",
+ "tool_parameter_name": "segment_conditions",
+ "description": "An array of segment conditions.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An array of segment conditions."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"List\",\n \"description\": \"Information about a specific list segment.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Segment Name\",\n \"description\": \"The name of the segment.\"\n },\n \"static_segment\": {\n \"type\": \"array\",\n \"title\": \"Static Segment\",\n \"description\": \"An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Conditions\",\n \"description\": \"The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.\",\n \"properties\": {\n \"match\": {\n \"type\": \"string\",\n \"title\": \"Match\",\n \"description\": \"Match type.\",\n \"enum\": [\n \"any\",\n \"all\"\n ]\n },\n \"conditions\": {\n \"type\": \"array\",\n \"title\": \"Segment Conditions\",\n \"description\": \"An array of segment conditions.\",\n \"items\": {\n \"type\": \"array\",\n \"title\": \"Segment Type\",\n \"description\": \"Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).\",\n \"items\": {\n \"x-discriminator\": {\n \"type\": \"string\",\n \"propertyName\": \"condition_type\"\n },\n \"x-oneOf\": [\n {\n \"type\": \"object\",\n \"title\": \"Aim Segment\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Aim\",\n \"enum\": [\n \"Aim\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"aim\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a specific campaign.\",\n \"example\": \"aim\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"open\",\n \"click\",\n \"sent\",\n \"noopen\",\n \"noclick\",\n \"nosent\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.\",\n \"example\": \"open\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Automation Segment\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Automation\",\n \"enum\": [\n \"Automation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"automation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with an Automation workflow.\",\n \"example\": \"automation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id for the automation workflow to segment against.\",\n \"example\": \"2135217\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Poll Activity Segment\",\n \"description\": \"Segment by poll activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"CampaignPoll\",\n \"enum\": [\n \"CampaignPoll\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"poll\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by poll activity.\",\n \"example\": \"poll\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members have/have not interacted with a specific poll in a Mailchimp email.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the poll.\",\n \"example\": 409\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Conversation Segment\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Conversation\",\n \"enum\": [\n \"Conversation\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"conversation\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a campaign via Conversations.\",\n \"example\": \"conversation\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of a member's interaction with a conversation. One of the following: has replied or has not replied.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.\",\n \"example\": \"any\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Segment\",\n \"description\": \"Segment by a specific date field.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Date\",\n \"enum\": [\n \"Date\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\",\n \"info_changed\",\n \"ecomm_date\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.\",\n \"example\": \"timestamp_opt\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"within\",\n \"notwithin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\",\n \"example\": \"date\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra Value\",\n \"description\": \"When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.\",\n \"example\": \"2015-01-30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Client Segment\",\n \"description\": \"Segment by use of a particular email client.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailClient\",\n \"enum\": [\n \"EmailClient\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"email_client\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by use of a particular email client.\",\n \"example\": \"email_client\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"client_is\",\n \"client_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The operation to determine whether we select clients that match the value, or clients that do not match the value.\",\n \"example\": \"client_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The name of the email client.\",\n \"example\": \"Gmail\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Language Segment\",\n \"description\": \"Segment by language.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Language\",\n \"enum\": [\n \"Language\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"language\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's language.\",\n \"example\": \"language\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's language is or is not set to a specific language.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"A two-letter language identifier.\",\n \"example\": \"en\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Member Rating Segment\",\n \"description\": \"Segment by member rating.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"MemberRating\",\n \"enum\": [\n \"MemberRating\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"rating\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by member rating.\",\n \"example\": \"rating\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The star rating number to segment against.\",\n \"example\": 4\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Signup Source Segment\",\n \"description\": \"Segment by signup source.\",\n \"required\": [\n \"field\",\n \"condition_type\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"SignupSource\"\n ],\n \"x-value\": \"SignupSource\",\n \"title\": \"Type\"\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"source\"\n ],\n \"title\": \"Segment Field\",\n \"example\": \"source\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"source_is\",\n \"source_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's signup source was/was not a particular value.\",\n \"example\": \"source_is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The signup source.\",\n \"example\": \"List Import\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Survey Monkey Segment\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SurveyMonkey\",\n \"enum\": [\n \"SurveyMonkey\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"survey_monkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by interaction with a SurveyMonkey survey.\",\n \"example\": \"survey_monkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"started\",\n \"completed\",\n \"not_started\",\n \"not_completed\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.\",\n \"example\": \"started\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Survey ID\",\n \"description\": \"The unique ID of the survey monkey survey.\",\n \"example\": \"32179586\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"VIP Segment\",\n \"description\": \"Segment by VIP status.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"VIP\",\n \"enum\": [\n \"VIP\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"gmonkey\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by VIP status.\",\n \"example\": \"gmonkey\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is or is not marked as VIP.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Interests Segment\",\n \"description\": \"Segment by an interest group merge field.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"Interests\",\n \"enum\": [\n \"Interests\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.\",\n \"example\": \"interests-123\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"interestcontains\",\n \"interestcontainsall\",\n \"interestnotcontains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member is a part of one, all, or none of the groups.\",\n \"example\": \"interestcontains\"\n },\n \"value\": {\n \"type\": \"array\",\n \"title\": \"Segment Value\",\n \"description\": \"An array containing strings, each representing a group id.\",\n \"items\": {\n \"type\": \"string\",\n \"example\": [\n \"44401\",\n \"44405\",\n \"44409\"\n ]\n }\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Category Segment\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommCategory\",\n \"enum\": [\n \"EcommCategory\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_cat\",\n \"ecomm_prod\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases in specific items or categories.\",\n \"example\": \"ecomm_cat\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The ecommerce category/item information.\",\n \"example\": \"Product\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Number Segment\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommNumber\",\n \"enum\": [\n \"EcommNumber\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_avg\",\n \"ecomm_orders\",\n \"ecomm_prod_all\",\n \"ecomm_avg_ord\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.\",\n \"example\": \"ecomm_orders\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent exactly, have not spent exactly, spent more, or spent less than this amount.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Segment\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommPurchased\",\n \"enum\": [\n \"EcommPurchased\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_purchased\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by whether someone has purchased anything.\",\n \"example\": \"ecomm_purchased\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have have ('member') or have not ('notmember') purchased.\",\n \"example\": \"member\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Spent Segment\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommSpent\",\n \"enum\": [\n \"EcommSpent\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_spent_one\",\n \"ecomm_spent_all\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by amount spent on a single order or across all orders.\",\n \"example\": \"ecomm_spent_one\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have spent 'more' or 'less' than then specified value.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The total amount a member spent.\",\n \"example\": 42\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Ecommerce Purchased Store Segment\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EcommStore\",\n \"enum\": [\n \"EcommStore\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ecomm_store\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by purchases from a specific store.\",\n \"example\": \"ecomm_store\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have or have not purchased from a specific store.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Operator\",\n \"description\": \"The store id to segment against.\",\n \"example\": \"289\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Activity Segment\",\n \"description\": \"Segment by Goal activity.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalActivity\",\n \"enum\": [\n \"GoalActivity\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by Goal activity.\",\n \"example\": \"goal\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"goal_not\",\n \"contains\",\n \"goal_notcontain\",\n \"starts\",\n \"ends\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The URL to check Goal activity against.\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Goal Timestamp Segment\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"GoalTimestamp\",\n \"enum\": [\n \"GoalTimestamp\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"goal_last_visited\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by most recent interaction with a website.\",\n \"example\": \"goal_last_visited\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"greater\",\n \"less\",\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the website activity happened after, before, or at a given timestamp.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The date to check Goal activity against.\",\n \"example\": \"2015-07-20 19:45:21\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Similar Subscribers Segment Member Segment\",\n \"description\": \"Segment by similar subscribers.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"FuzzySegment\",\n \"enum\": [\n \"FuzzySegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by similar subscribers.\",\n \"example\": \"fuzzy_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"fuzzy_is\",\n \"fuzzy_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a 'similar subscribers' segment.\",\n \"example\": \"fuzzy_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the 'similar subscribers' segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Static Segment Member Segment\",\n \"description\": \"Segment by a given static segment.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"StaticSegment\",\n \"enum\": [\n \"StaticSegment\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_segment\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by a given static segment.\",\n \"example\": \"static_segment\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"static_is\",\n \"static_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/are not apart of a static segment.\",\n \"example\": \"static_is\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The id for the static segment.\",\n \"example\": 48433\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Location-Based Segment\",\n \"description\": \"Segment by a specific country or US state.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoCountryState\",\n \"enum\": [\n \"IPGeoCountryState\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeocountry\",\n \"ipgeonotcountry\",\n \"ipgeostate\",\n \"ipgeonotstate\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific country or US state.\",\n \"example\": \"ipgeocountry\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"The two-letter country code or US state abbreviation.\",\n \"example\": \"US\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Geolocation Segment\",\n \"description\": \"Segment by a specific geographic region.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"addr\",\n \"lat\",\n \"lng\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoIn\",\n \"enum\": [\n \"IPGeoIn\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoin\",\n \"ipgeonotin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific geographic region.\",\n \"example\": \"ipgeoin\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 42\n },\n \"addr\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Address\",\n \"description\": \"The address of the target location.\",\n \"example\": \"Atlanta, GA, USA\"\n },\n \"lat\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Latitude\",\n \"description\": \"The latitude of the target location.\",\n \"example\": \"33.7489954\"\n },\n \"lng\": {\n \"type\": \"string\",\n \"title\": \"Segment Location Longitude\",\n \"description\": \"The longitude of the target location.\",\n \"example\": \"-84.3879824\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"US Zip Code Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoInZip\",\n \"enum\": [\n \"IPGeoInZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoinzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are within a specific US zip code.\",\n \"example\": \"ipgeoinzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The radius of the target location.\",\n \"example\": 25\n },\n \"extra\": {\n \"type\": \"integer\",\n \"title\": \"Extra Data\",\n \"description\": \"The zip code to segment against.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Unknown Location-Based Segment\",\n \"description\": \"Segment members whose location information is unknown.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoUnknown\",\n \"enum\": [\n \"IPGeoUnknown\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeounknown\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members for which location information is unknown.\",\n \"example\": \"ipgeounknown\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Zip Code Location-Based Segment\",\n \"description\": \"Segment by a specific US ZIP code.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"IPGeoZip\",\n \"enum\": [\n \"IPGeoZip\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeo\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting subscribers who are within a specific location.\",\n \"example\": \"ipgeo\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"ipgeoiszip\",\n \"ipgeonotzip\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Segment members who are/are not within a specific US zip code.\",\n \"example\": \"ipgeonotzip\"\n },\n \"value\": {\n \"type\": \"integer\",\n \"title\": \"Segment Data\",\n \"description\": \"The 5-digit zip code.\",\n \"example\": 30318\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Age Segment\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialAge\",\n \"enum\": [\n \"SocialAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_age\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by age ranges in Social Profiles data.\",\n \"example\": \"social_age\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-54\",\n \"55+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The age range to segment.\",\n \"example\": \"35-54\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Gender Segment\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialGender\",\n \"enum\": [\n \"SocialGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by listed gender in Social Profiles data.\",\n \"example\": \"social_gender\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Influence Segment\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialInfluence\",\n \"enum\": [\n \"SocialInfluence\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_influence\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by influence rating in Social Profiles data.\",\n \"example\": \"social_influence\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who have a rating that is/not or greater/less than the rating provided.\",\n \"example\": \"greater\"\n },\n \"value\": {\n \"type\": \"number\",\n \"title\": \"Segment Operator\",\n \"description\": \"The Social Profiles influence rating to segment.\",\n \"example\": 2\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkMember\",\n \"enum\": [\n \"SocialNetworkMember\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"member\",\n \"notmember\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not on a given social network.\",\n \"example\": \"member\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter\",\n \"facebook\",\n \"linkedin\",\n \"flickr\",\n \"foursquare\",\n \"lastfm\",\n \"myspace\",\n \"quora\",\n \"vimeo\",\n \"yelp\",\n \"youtube\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Social Profiles Social Network Follow Segment\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SocialNetworkFollow\",\n \"enum\": [\n \"SocialNetworkFollow\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"social_network\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by social network in Social Profiles data.\",\n \"example\": \"social_network\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"follow\",\n \"notfollow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not following a linked account on a given social network.\",\n \"example\": \"follow\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"twitter_follow\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The social network to segment against.\",\n \"example\": \"twitter_follow\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"AddressMerge\",\n \"enum\": [\n \"AddressMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address-type merge field to segment.\",\n \"example\": \"MMERGE3\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"contains\",\n \"notcontain\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field contains/does not contain a value or is/is not blank.\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Atlanta\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Address/Zip Merge Field Segment\",\n \"description\": \"Segment by an address-type merge field within a given distance.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\",\n \"extra\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"ZipMerge\",\n \"enum\": [\n \"ZipMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"An address or zip-type merge field to segment.\",\n \"example\": \"MMERGE2\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"geoin\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's address merge field is within a given distance from a city or zip.\",\n \"example\": \"geoin\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The distance from the city/zip.\",\n \"example\": \"25\"\n },\n \"extra\": {\n \"type\": \"string\",\n \"title\": \"Segment Extra\",\n \"description\": \"The city or the zip being used to segment against.\",\n \"example\": \"30318\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Birthday Merge Field Segment\",\n \"description\": \"Segment by a contact's birthday.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"BirthdayMerge\",\n \"enum\": [\n \"BirthdayMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE4\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's birthday merge information is/is not a certain date or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against (mm/dd).\",\n \"example\": \"01/30\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Date Merge Field Segment\",\n \"description\": \"Segment by a given date merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"DateMerge\",\n \"enum\": [\n \"DateMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A date merge field to segment.\",\n \"example\": \"MMERGE5\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"less\",\n \"blank\",\n \"blank_not\",\n \"greater\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"A date to segment against.\",\n \"example\": \"01/30/2015\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Dropdown/Radio Merge Field Segment\",\n \"description\": \"An individual segment condition\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"SelectMerge\",\n \"enum\": [\n \"SelectMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A merge field to segment.\",\n \"example\": \"MMERGE6\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"blank\",\n \"blank_not\",\n \"notcontain\",\n \"contains\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not a value or is/is not blank.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text merge field with.\",\n \"example\": \"Second Choice\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Text or Number Merge Field Segment\",\n \"description\": \"Segment by a given text or number merge field.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"TextMerge\",\n \"enum\": [\n \"TextMerge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"title\": \"Segment Field\",\n \"description\": \"A text or number merge field to segment.\",\n \"example\": \"MMERGE7\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\",\n \"blank\",\n \"blank_not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value\",\n \"example\": \"contains\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to segment a text or number merge field with.\",\n \"example\": \"Freddie's Jokes\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Email Segment\",\n \"description\": \"Segment by email address.\",\n \"required\": [\n \"field\",\n \"op\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"EmailAddress\",\n \"enum\": [\n \"EmailAddress\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"merge0\",\n \"EMAIL\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segmenting based off of a subscriber's email address.\",\n \"example\": \"EMAIL\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\",\n \"contains\",\n \"notcontain\",\n \"starts\",\n \"ends\",\n \"greater\",\n \"less\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Value\",\n \"description\": \"The value to compare the email against.\",\n \"example\": \"urist.mcvankab@freddiesjokes.com\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Gender Segment\",\n \"description\": \"Segment by predicted gender.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedGender\",\n \"enum\": [\n \"PredictedGender\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_gender\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted gender.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\",\n \"not\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"male\",\n \"female\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted gender to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"Predicted Age Segment\",\n \"description\": \"Segment by predicted age.\",\n \"required\": [\n \"field\",\n \"op\",\n \"value\"\n ],\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"PredictedAge\",\n \"enum\": [\n \"PredictedAge\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"predicted_age_range\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by predicted age.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"is\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Members who are/not the exact criteria listed.\",\n \"example\": \"is\"\n },\n \"value\": {\n \"type\": \"string\",\n \"enum\": [\n \"18-24\",\n \"25-34\",\n \"35-44\",\n \"45-54\",\n \"55-64\",\n \"65+\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"The predicted age to segment.\",\n \"example\": \"female\"\n }\n }\n },\n {\n \"type\": \"object\",\n \"title\": \"New Subscribers Prebuilt Segment\",\n \"description\": \"Segment by when people subscribed.\",\n \"properties\": {\n \"condition_type\": {\n \"type\": \"string\",\n \"x-value\": \"NewSubscribers\",\n \"enum\": [\n \"NewSubscribers\"\n ]\n },\n \"field\": {\n \"type\": \"string\",\n \"enum\": [\n \"timestamp_opt\"\n ],\n \"title\": \"Segment Field\",\n \"description\": \"Segment by when people subscribed.\"\n },\n \"op\": {\n \"type\": \"string\",\n \"enum\": [\n \"date_within\"\n ],\n \"title\": \"Segment Operator\",\n \"description\": \"Whe the event took place, namely within a time frame.\"\n },\n \"value\": {\n \"type\": \"string\",\n \"title\": \"Segment Data\",\n \"description\": \"What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMemberNote.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMemberNote.json
new file mode 100644
index 00000000..9de0d25b
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMemberNote.json
@@ -0,0 +1,206 @@
+{
+ "name": "UpdateMemberNote",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateMemberNote@0.1.0",
+ "description": "Update a specific note for a list member in Mailchimp.\n\nThis tool updates a specific note for a given list member on Mailchimp. Use this when you need to modify the content of an existing note associated with a subscriber in a mailing list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_unique_id",
+ "required": true,
+ "description": "The unique ID for the mailing list where the note is being updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "member_identifier",
+ "required": true,
+ "description": "The MD5 hash, email address, or contact_id of the list member.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "subscriber_hash"
+ },
+ {
+ "name": "note_identifier",
+ "required": true,
+ "description": "The unique identifier for the note to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "note_id"
+ },
+ {
+ "name": "note_content",
+ "required": false,
+ "description": "Content of the note to be updated. Must not exceed 1,000 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "note"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsIdMembersIdNotesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/members/{subscriber_hash}/notes/{note_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_unique_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "subscriber_hash",
+ "tool_parameter_name": "member_identifier",
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact_id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "note_id",
+ "tool_parameter_name": "note_identifier",
+ "description": "The id for the note.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the note."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "note",
+ "tool_parameter_name": "note_content",
+ "description": "The content of the note. Note length is limited to 1,000 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The content of the note. Note length is limited to 1,000 characters."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Member Notes\",\n \"description\": \"A specific note for a specific member.\",\n \"properties\": {\n \"note\": {\n \"type\": \"string\",\n \"title\": \"Note\",\n \"description\": \"The content of the note. Note length is limited to 1,000 characters.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMergeField.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMergeField.json
new file mode 100644
index 00000000..d0f232ea
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateMergeField.json
@@ -0,0 +1,369 @@
+{
+ "name": "UpdateMergeField",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateMergeField@0.1.0",
+ "description": "Update a specific merge field in a list.\n\nThis tool updates a specific merge field for a given list in Mailchimp. Use it when you need to modify the properties of a merge field, such as its name or type, within a specific list.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique ID for the list to update the merge field in.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "merge_field_id",
+ "required": true,
+ "description": "The unique ID for the specific merge field to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "merge_id"
+ },
+ {
+ "name": "merge_field_update_data",
+ "required": true,
+ "description": "A JSON object containing details of the merge field to update. Include properties like tag, name, required, default_value, public, display_order, options, and help_text.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tag": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the merge field (audience field)."
+ },
+ "required": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "default_country": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a radio or dropdown non-group field, the available options for members to pick from."
+ }
+ },
+ "inner_properties": null,
+ "description": "Extra options for some merge field types."
+ },
+ "help_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsIdMergeFieldsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/merge-fields/{merge_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "merge_id",
+ "tool_parameter_name": "merge_field_id",
+ "description": "The id for the merge field.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the merge field."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "merge_field_update_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "tag": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts)."
+ },
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the merge field (audience field)."
+ },
+ "required": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is required to import a contact."
+ },
+ "default_value": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The default value for the merge field if `null`."
+ },
+ "public": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the merge field is displayed on the signup form."
+ },
+ "display_order": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order that the merge field displays on the list signup form."
+ },
+ "options": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "default_country": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In an address field, the default country code if none supplied."
+ },
+ "phone_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a phone field, the phone number type: US or International."
+ },
+ "date_format": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a date or birthday field, the format of the date."
+ },
+ "choices": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "In a radio or dropdown non-group field, the available options for members to pick from."
+ }
+ },
+ "inner_properties": null,
+ "description": "Extra options for some merge field types."
+ },
+ "help_text": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Extra text to help the subscriber fill out the form."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Merge Field\",\n \"description\": \"A [merge field](https://mailchimp.com/developer/marketing/docs/merge-fields/) for an audience.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n \"title\": \"Merge Tag\",\n \"description\": \"The merge tag used for Mailchimp campaigns and [adding contact information](https://mailchimp.com/developer/marketing/docs/merge-fields/#add-merge-data-to-contacts).\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Name\",\n \"description\": \"The name of the merge field (audience field).\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"title\": \"Required\",\n \"description\": \"Whether the merge field is required to import a contact.\"\n },\n \"default_value\": {\n \"type\": \"string\",\n \"title\": \"Default Value\",\n \"description\": \"The default value for the merge field if `null`.\"\n },\n \"public\": {\n \"type\": \"boolean\",\n \"title\": \"Merge Field Public Status\",\n \"description\": \"Whether the merge field is displayed on the signup form.\"\n },\n \"display_order\": {\n \"type\": \"integer\",\n \"title\": \"Display Order\",\n \"description\": \"The order that the merge field displays on the list signup form.\"\n },\n \"options\": {\n \"type\": \"object\",\n \"title\": \"Merge Field Options\",\n \"description\": \"Extra options for some merge field types.\",\n \"properties\": {\n \"default_country\": {\n \"type\": \"integer\",\n \"title\": \"Default Country\",\n \"description\": \"In an address field, the default country code if none supplied.\"\n },\n \"phone_format\": {\n \"type\": \"string\",\n \"title\": \"Phone Type\",\n \"description\": \"In a phone field, the phone number type: US or International.\"\n },\n \"date_format\": {\n \"type\": \"string\",\n \"title\": \"Date Type\",\n \"description\": \"In a date or birthday field, the format of the date.\"\n },\n \"choices\": {\n \"type\": \"array\",\n \"title\": \"Choices\",\n \"description\": \"In a radio or dropdown non-group field, the available options for members to pick from.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"example\": [\n \"First Choice\",\n \"Second Choice\",\n \"Third Choice\"\n ]\n }\n }\n },\n \"help_text\": {\n \"type\": \"string\",\n \"title\": \"Merge Field Help Text\",\n \"description\": \"Extra text to help the subscriber fill out the form.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateOrderLineItem.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateOrderLineItem.json
new file mode 100644
index 00000000..0f25426d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateOrderLineItem.json
@@ -0,0 +1,338 @@
+{
+ "name": "UpdateOrderLineItem",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateOrderLineItem@0.1.0",
+ "description": "Update a specific order line item.\n\nUse this tool to update details of a specific order line item in an e-commerce store. Useful for modifying existing order line items with new information or adjustments.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "Unique identifier for the store where the order was placed.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order within the store. Required to specify which order is being updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "line_item_id",
+ "required": true,
+ "description": "The unique identifier for the line item within an order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "line_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": false,
+ "description": "A unique identifier for the product associated with the order line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "required": false,
+ "description": "A unique identifier for the product variant associated with the order line item. This is required to specify the variant of the product being referenced.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_variant_id"
+ },
+ {
+ "name": "order_line_item_quantity",
+ "required": false,
+ "description": "Specify the quantity of the order line item to be updated.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "quantity"
+ },
+ {
+ "name": "order_line_item_price",
+ "required": false,
+ "description": "Specify the updated price for the order line item. This should be a numerical value reflecting the new cost of the item.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "price"
+ },
+ {
+ "name": "line_item_discount_amount",
+ "required": false,
+ "description": "The total discount amount applied to this line item in the order. Provide as a numerical value.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "discount"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdOrdersIdLinesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}/lines/{line_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "line_id",
+ "tool_parameter_name": "line_item_id",
+ "description": "The id for the line item of an order.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the line item of an order."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "A unique identifier for the product associated with the order line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_variant_id",
+ "tool_parameter_name": "product_variant_id",
+ "description": "A unique identifier for the product variant associated with the order line item.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "quantity",
+ "tool_parameter_name": "order_line_item_quantity",
+ "description": "The quantity of an order line item.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "price",
+ "tool_parameter_name": "order_line_item_price",
+ "description": "The price of an order line item.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "discount",
+ "tool_parameter_name": "line_item_discount_amount",
+ "description": "The total discount amount applied to this line item.",
+ "value_schema": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateOrderMailchimp.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateOrderMailchimp.json
new file mode 100644
index 00000000..f2163bca
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateOrderMailchimp.json
@@ -0,0 +1,1351 @@
+{
+ "name": "UpdateOrderMailchimp",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateOrderMailchimp@0.1.0",
+ "description": "Update a specific order in Mailchimp's e-commerce store.\n\nUse this tool to modify order details in a specified Mailchimp e-commerce store. It updates the order data based on provided criteria and returns the updated order status.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the store in which the order is being updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "order_id",
+ "required": true,
+ "description": "The unique identifier for the order in the store that needs to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "order_id"
+ },
+ {
+ "name": "order_update_details",
+ "required": true,
+ "description": "JSON object with details for updating an order, including customer info, financial status, shipping and billing addresses, promos, and line items.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign associated with an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state the order's shipping address is located in."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the order's shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the order's shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with an order's shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdOrdersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/orders/{order_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "order_id",
+ "tool_parameter_name": "order_id",
+ "description": "The id for the order in a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the order in a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "order_update_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "customer": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "opt_in_status": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers)."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's company."
+ },
+ "first_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's first name."
+ },
+ "last_name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's last name."
+ },
+ "address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The mailing address of the customer."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the customer's mailing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city the customer is located in."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's state name or normalized province."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's province or state."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's postal or zip code."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The customer's country."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the customer's country."
+ }
+ },
+ "inner_properties": null,
+ "description": "The customer's address."
+ }
+ },
+ "inner_properties": null,
+ "description": "Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body."
+ },
+ "campaign_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A string that uniquely identifies the campaign associated with an order."
+ },
+ "cart_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A cart id that the order was placed for."
+ },
+ "landing_site": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the page where the buyer landed when entering the shop."
+ },
+ "financial_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "fulfillment_status": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications)."
+ },
+ "currency_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The three-letter ISO 4217 code for the currency that the store accepts."
+ },
+ "order_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The order total associated with an order."
+ },
+ "order_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for the order."
+ },
+ "discount_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total amount of the discounts to be applied to the price of the order."
+ },
+ "tax_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tax total associated with an order."
+ },
+ "shipping_total": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping total for the order."
+ },
+ "tracking_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "prec"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs."
+ },
+ "processed_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was processed in ISO 8601 format."
+ },
+ "cancelled_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the order was updated in ISO 8601 format."
+ },
+ "shipping_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's shipping address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the shipping address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the order's shipping address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the order's shipping address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state the order's shipping address is located in."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the order's shipping address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the order's shipping address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the shipping address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the shipping address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the shipping address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the order's shipping address"
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with an order's shipping address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The shipping address for the order."
+ },
+ "billing_address": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "name": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name associated with an order's billing address."
+ },
+ "address1": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "address2": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "An additional field for the billing address."
+ },
+ "city": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The city in the billing address."
+ },
+ "province": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The state or normalized province in the billing address."
+ },
+ "province_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the province or state in the billing address."
+ },
+ "postal_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The postal or zip code in the billing address."
+ },
+ "country": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The country in the billing address."
+ },
+ "country_code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The two-letter code for the country in the billing address."
+ },
+ "longitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The longitude for the billing address location."
+ },
+ "latitude": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The latitude for the billing address location."
+ },
+ "phone": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The phone number for the billing address."
+ },
+ "company": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The company associated with the billing address."
+ }
+ },
+ "inner_properties": null,
+ "description": "The billing address for the order."
+ },
+ "promos": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "code": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The Promo Code"
+ },
+ "amount_discounted": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0"
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed"
+ }
+ },
+ "description": "The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided."
+ },
+ "lines": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "product_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product associated with the order line item."
+ },
+ "product_variant_id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant associated with the order line item."
+ },
+ "quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The quantity of an order line item."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of an order line item."
+ },
+ "discount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The total discount amount applied to this line item."
+ }
+ },
+ "description": "An array of the order's line items."
+ },
+ "outreach": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the outreach. Can be an email campaign ID."
+ }
+ },
+ "inner_properties": null,
+ "description": "The outreach associated with this order. For example, an email campaign or Facebook ad."
+ },
+ "tracking_number": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking number associated with the order."
+ },
+ "tracking_carrier": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking carrier associated with the order."
+ },
+ "tracking_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The tracking URL associated with the order."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order\",\n \"description\": \"Information about a specific order.\",\n \"properties\": {\n \"customer\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Customer\",\n \"description\": \"Information about a specific customer. Orders for existing customers should include only the `id` parameter in the `customer` object body.\",\n \"properties\": {\n \"opt_in_status\": {\n \"type\": \"boolean\",\n \"title\": \"Opt-in Status\",\n \"description\": \"The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list [will be added as `Transactional` members](https://mailchimp.com/developer/marketing/docs/e-commerce/#customers).\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The customer's company.\"\n },\n \"first_name\": {\n \"type\": \"string\",\n \"title\": \"First Name\",\n \"description\": \"The customer's first name.\"\n },\n \"last_name\": {\n \"type\": \"string\",\n \"title\": \"Last Name\",\n \"description\": \"The customer's last name.\"\n },\n \"address\": {\n \"type\": \"object\",\n \"title\": \"Address\",\n \"description\": \"The customer's address.\",\n \"properties\": {\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The mailing address of the customer.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the customer's mailing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city the customer is located in.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The customer's state name or normalized province.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the customer's province or state.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The customer's postal or zip code.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The customer's country.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the customer's country.\",\n \"example\": \"US\"\n }\n }\n }\n }\n },\n \"campaign_id\": {\n \"type\": \"string\",\n \"title\": \"Campaign ID\",\n \"description\": \"A string that uniquely identifies the campaign associated with an order.\",\n \"example\": \"839488a60b\"\n },\n \"cart_id\": {\n \"type\": \"string\",\n \"title\": \"Cart ID\",\n \"description\": \"A cart id that the order was placed for.\",\n \"example\": \"cart-123\"\n },\n \"landing_site\": {\n \"type\": \"string\",\n \"title\": \"Landing Site\",\n \"description\": \"The URL for the page where the buyer landed when entering the shop.\",\n \"example\": \"http://www.example.com?source=abc\"\n },\n \"financial_status\": {\n \"type\": \"string\",\n \"title\": \"Financial Status\",\n \"description\": \"The order status. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"fulfillment_status\": {\n \"type\": \"string\",\n \"title\": \"Fulfillment Status\",\n \"description\": \"The fulfillment status for the order. Use this parameter to trigger [Order Notifications](https://mailchimp.com/developer/marketing/docs/e-commerce/#order-notifications).\"\n },\n \"currency_code\": {\n \"type\": \"string\",\n \"title\": \"Currency Code\",\n \"description\": \"The three-letter ISO 4217 code for the currency that the store accepts.\"\n },\n \"order_total\": {\n \"type\": \"number\",\n \"title\": \"Order Total\",\n \"description\": \"The order total associated with an order.\"\n },\n \"order_url\": {\n \"type\": \"string\",\n \"title\": \"Order URL\",\n \"description\": \"The URL for the order.\"\n },\n \"discount_total\": {\n \"type\": \"number\",\n \"title\": \"Discount Total\",\n \"description\": \"The total amount of the discounts to be applied to the price of the order.\"\n },\n \"tax_total\": {\n \"type\": \"number\",\n \"title\": \"Tax Total\",\n \"description\": \"The tax total associated with an order.\"\n },\n \"shipping_total\": {\n \"type\": \"number\",\n \"title\": \"Shipping Total\",\n \"description\": \"The shipping total for the order.\"\n },\n \"tracking_code\": {\n \"type\": \"string\",\n \"enum\": [\n \"prec\"\n ],\n \"title\": \"Tracking Code\",\n \"description\": \"The Mailchimp tracking code for the order. Uses the 'mc_tc' parameter in E-Commerce tracking URLs.\"\n },\n \"processed_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Processed Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was processed in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"cancelled_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Cancel Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was cancelled in ISO 8601 format. Note: passing a value for this parameter will cancel the order being edited.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Update Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the order was updated in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n },\n \"shipping_address\": {\n \"type\": \"object\",\n \"title\": \"Shipping Address\",\n \"description\": \"The shipping address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's shipping address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The shipping address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the shipping address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the order's shipping address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the order's shipping address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state the order's shipping address is located in.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the order's shipping address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the order's shipping address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the shipping address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the shipping address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the shipping address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the order's shipping address\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with an order's shipping address.\"\n }\n }\n },\n \"billing_address\": {\n \"type\": \"object\",\n \"title\": \"Billing Address\",\n \"description\": \"The billing address for the order.\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Name\",\n \"description\": \"The name associated with an order's billing address.\",\n \"example\": \"Freddie Chimpenheimer\"\n },\n \"address1\": {\n \"type\": \"string\",\n \"title\": \"Address Field 1\",\n \"description\": \"The billing address for the order.\",\n \"example\": \"675 Ponce de Leon Ave NE\"\n },\n \"address2\": {\n \"type\": \"string\",\n \"title\": \"Address Field 2\",\n \"description\": \"An additional field for the billing address.\",\n \"example\": \"Suite 5000\"\n },\n \"city\": {\n \"type\": \"string\",\n \"title\": \"City \",\n \"description\": \"The city in the billing address.\",\n \"example\": \"Atlanta\"\n },\n \"province\": {\n \"type\": \"string\",\n \"title\": \"Province\",\n \"description\": \"The state or normalized province in the billing address.\",\n \"example\": \"Georgia\"\n },\n \"province_code\": {\n \"type\": \"string\",\n \"title\": \"Province Code\",\n \"description\": \"The two-letter code for the province or state in the billing address.\",\n \"example\": \"GA\"\n },\n \"postal_code\": {\n \"type\": \"string\",\n \"title\": \"Postal Code\",\n \"description\": \"The postal or zip code in the billing address.\",\n \"example\": \"30308\"\n },\n \"country\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The country in the billing address.\",\n \"example\": \"United States\"\n },\n \"country_code\": {\n \"type\": \"string\",\n \"title\": \"Country Code\",\n \"description\": \"The two-letter code for the country in the billing address.\",\n \"example\": \"US\"\n },\n \"longitude\": {\n \"type\": \"number\",\n \"title\": \"Longitude\",\n \"description\": \"The longitude for the billing address location.\",\n \"example\": -75.68903\n },\n \"latitude\": {\n \"type\": \"number\",\n \"title\": \"Latitude\",\n \"description\": \"The latitude for the billing address location.\",\n \"example\": 45.427408\n },\n \"phone\": {\n \"type\": \"string\",\n \"title\": \"Phone Number\",\n \"description\": \"The phone number for the billing address.\",\n \"example\": \"8675309\"\n },\n \"company\": {\n \"type\": \"string\",\n \"title\": \"Company\",\n \"description\": \"The company associated with the billing address.\"\n }\n }\n },\n \"promos\": {\n \"type\": \"array\",\n \"title\": \"Promos\",\n \"description\": \"The promo codes applied on the order. Note: Patch will completely replace the value of promos with the new one provided.\",\n \"items\": {\n \"type\": \"object\",\n \"required\": [\n \"code\",\n \"type\",\n \"amount_discounted\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Code\",\n \"description\": \"The Promo Code\"\n },\n \"amount_discounted\": {\n \"type\": \"number\",\n \"title\": \"Amount Discounted\",\n \"description\": \"The amount of discount applied on the total price. For example if the total cost was $100 and the customer paid $95.5, amount_discounted will be 4.5 For free shipping set amount_discounted to 0\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n }\n }\n }\n },\n \"lines\": {\n \"type\": \"array\",\n \"title\": \"Order Line Items\",\n \"description\": \"An array of the order's line items.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Order Line Item\",\n \"description\": \"Information about a specific order line.\",\n \"properties\": {\n \"product_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Foreign ID\",\n \"description\": \"A unique identifier for the product associated with the order line item.\"\n },\n \"product_variant_id\": {\n \"type\": \"string\",\n \"title\": \"Order Line Item Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant associated with the order line item.\"\n },\n \"quantity\": {\n \"type\": \"integer\",\n \"title\": \"Quantity\",\n \"description\": \"The quantity of an order line item.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of an order line item.\"\n },\n \"discount\": {\n \"type\": \"number\",\n \"title\": \"Discount\",\n \"description\": \"The total discount amount applied to this line item.\"\n }\n }\n }\n },\n \"outreach\": {\n \"type\": \"object\",\n \"title\": \"Outreach\",\n \"description\": \"The outreach associated with this order. For example, an email campaign or Facebook ad.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Outreach ID\",\n \"description\": \"A unique identifier for the outreach. Can be an email campaign ID.\",\n \"example\": \"839488a60b\"\n }\n }\n },\n \"tracking_number\": {\n \"type\": \"string\",\n \"title\": \"Tracking number\",\n \"description\": \"The tracking number associated with the order.\"\n },\n \"tracking_carrier\": {\n \"type\": \"string\",\n \"title\": \"Tracking carrier\",\n \"description\": \"The tracking carrier associated with the order.\"\n },\n \"tracking_url\": {\n \"type\": \"string\",\n \"title\": \"Tracking URL\",\n \"description\": \"The tracking URL associated with the order.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductImageMailchimp.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductImageMailchimp.json
new file mode 100644
index 00000000..cd0bfbb6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductImageMailchimp.json
@@ -0,0 +1,272 @@
+{
+ "name": "UpdateProductImageMailchimp",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateProductImageMailchimp@0.1.0",
+ "description": "Update a product image in an e-commerce store.\n\nThis tool updates a specific product image within a Mailchimp e-commerce store. Use it when you need to modify an image associated with a product in a store managed by Mailchimp.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_id",
+ "required": true,
+ "description": "The unique identifier for the e-commerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": true,
+ "description": "The unique identifier for a product in the store. Used to specify which product's image should be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_image_id",
+ "required": true,
+ "description": "The unique identifier for the product image to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "image_id"
+ },
+ {
+ "name": "product_image_unique_id",
+ "required": false,
+ "description": "A unique identifier for a specific product image to be updated in the store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "id"
+ },
+ {
+ "name": "product_image_url",
+ "required": false,
+ "description": "The URL of the product image to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "url"
+ },
+ {
+ "name": "variant_ids",
+ "required": false,
+ "description": "A list of product variant IDs associated with the image. Each variant ID should be a string.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "variant_ids"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdProductsIdImagesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/images/{image_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_id",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "image_id",
+ "tool_parameter_name": "product_image_id",
+ "description": "The id for the product image.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product image."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "id",
+ "tool_parameter_name": "product_image_unique_id",
+ "description": "A unique identifier for the product image.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "url",
+ "tool_parameter_name": "product_image_url",
+ "description": "The URL for a product image.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "variant_ids",
+ "tool_parameter_name": "variant_ids",
+ "description": "The list of product variants using the image.",
+ "value_schema": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductInfo.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductInfo.json
new file mode 100644
index 00000000..a98837b2
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductInfo.json
@@ -0,0 +1,515 @@
+{
+ "name": "UpdateProductInfo",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateProductInfo@0.1.0",
+ "description": "Update details of a specific product in a store.\n\nThis tool updates information for a specific product in an e-commerce store. Call this tool when you need to modify product details, such as name, description, or price, for a particular store.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The identifier for the specific store whose product details are being updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": true,
+ "description": "The unique identifier for the product within a store. Required for updating product details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_update_data",
+ "required": true,
+ "description": "JSON object containing product details to update, such as title, description, price, variants, and images.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdProductsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "product_update_data",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product."
+ },
+ "handle": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The handle of a product."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a product."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The type of product."
+ },
+ "vendor": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The vendor for a product."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product."
+ },
+ "variants": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "description": "An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product."
+ },
+ "images": {
+ "val_type": "array",
+ "inner_val_type": "json",
+ "enum": null,
+ "properties": null,
+ "inner_properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product image."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product image."
+ },
+ "variant_ids": {
+ "val_type": "array",
+ "inner_val_type": "string",
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The list of product variants using the image."
+ }
+ },
+ "description": "An array of the product's images."
+ },
+ "published_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the product was published in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product\",\n \"description\": \"Information about a specific product.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product.\",\n \"example\": \"Cat Hat\"\n },\n \"handle\": {\n \"type\": \"string\",\n \"title\": \"Handle\",\n \"description\": \"The handle of a product.\",\n \"example\": \"cat-hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"Product URL\",\n \"description\": \"The URL for a product.\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a product.\",\n \"example\": \"This is a cat hat.\"\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"The type of product.\",\n \"example\": \"Accessories\"\n },\n \"vendor\": {\n \"type\": \"string\",\n \"title\": \"Vendor\",\n \"description\": \"The vendor for a product.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Product Image URL\",\n \"description\": \"The image URL for a product.\"\n },\n \"variants\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"An array of the product's variants. At least one variant is required for each product. A variant can use the same `id` and `title` as the parent product.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n },\n \"images\": {\n \"type\": \"array\",\n \"title\": \"Product Images\",\n \"description\": \"An array of the product's images.\",\n \"items\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Image\",\n \"description\": \"Information about a specific product image.\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Image Foreign ID\",\n \"description\": \"A unique identifier for the product image.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product image.\"\n },\n \"variant_ids\": {\n \"type\": \"array\",\n \"title\": \"Product Variants\",\n \"description\": \"The list of product variants using the image.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"published_at_foreign\": {\n \"type\": \"string\",\n \"title\": \"Foreign Publish Time\",\n \"format\": \"date-time\",\n \"description\": \"The date and time the product was published in ISO 8601 format.\",\n \"example\": \"2015-07-15T19:28:00+00:00\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductVariant.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductVariant.json
new file mode 100644
index 00000000..83d6813f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateProductVariant.json
@@ -0,0 +1,352 @@
+{
+ "name": "UpdateProductVariant",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateProductVariant@0.1.0",
+ "description": "Add or update a product variant in an ecommerce store.\n\nUse this tool to add a new product variant or update an existing one in a specified ecommerce store.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the ecommerce store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "product_identifier",
+ "required": true,
+ "description": "The unique identifier for the product in the store. This ID is used to specify which product's variant is being added or updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "product_id"
+ },
+ {
+ "name": "product_variant_id",
+ "required": true,
+ "description": "The unique identifier for the product variant to be updated or added.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "variant_id"
+ },
+ {
+ "name": "product_variant_details",
+ "required": true,
+ "description": "A JSON object containing details for the product variant, like 'id', 'title', 'url', 'sku', 'price', 'inventory_quantity', 'image_url', 'backorders', and 'visibility'.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'putEcommerceStoresIdProductsIdVariantsId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/products/{product_id}/variants/{variant_id}",
+ "http_method": "PUT",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "product_id",
+ "tool_parameter_name": "product_identifier",
+ "description": "The id for the product of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "variant_id",
+ "tool_parameter_name": "product_variant_id",
+ "description": "The id for the product variant.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the product variant."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "product_variant_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "id": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A unique identifier for the product variant."
+ },
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title of a product variant."
+ },
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The URL for a product variant."
+ },
+ "sku": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The stock keeping unit (SKU) of a product variant."
+ },
+ "price": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The price of a product variant."
+ },
+ "inventory_quantity": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The inventory quantity of a product variant."
+ },
+ "image_url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The image URL for a product variant."
+ },
+ "backorders": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The backorders of a product variant."
+ },
+ "visibility": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The visibility of a product variant."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Product Variant\",\n \"description\": \"Information about a specific product variant.\",\n \"required\": [\n \"id\",\n \"title\"\n ],\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"title\": \"Product Variant Foreign ID\",\n \"description\": \"A unique identifier for the product variant.\"\n },\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title of a product variant.\",\n \"example\": \"Cat Hat\"\n },\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"The URL for a product variant.\"\n },\n \"sku\": {\n \"type\": \"string\",\n \"title\": \"SKU\",\n \"description\": \"The stock keeping unit (SKU) of a product variant.\"\n },\n \"price\": {\n \"type\": \"number\",\n \"title\": \"Price\",\n \"description\": \"The price of a product variant.\"\n },\n \"inventory_quantity\": {\n \"type\": \"integer\",\n \"title\": \"Inventory Quantity\",\n \"description\": \"The inventory quantity of a product variant.\"\n },\n \"image_url\": {\n \"type\": \"string\",\n \"title\": \"Image URL\",\n \"description\": \"The image URL for a product variant.\"\n },\n \"backorders\": {\n \"type\": \"string\",\n \"title\": \"Backorders\",\n \"description\": \"The backorders of a product variant.\"\n },\n \"visibility\": {\n \"type\": \"string\",\n \"title\": \"Visibility\",\n \"description\": \"The visibility of a product variant.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdatePromoCode.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdatePromoCode.json
new file mode 100644
index 00000000..5a55724d
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdatePromoCode.json
@@ -0,0 +1,371 @@
+{
+ "name": "UpdatePromoCode",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdatePromoCode@0.1.0",
+ "description": "Update details of a specific promo code.\n\nUse this tool to update the details of a specific promo code in an eCommerce store using Mailchimp. It should be called when you need to modify existing promotional codes, such as changing the discount or expiration date.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "The unique identifier for the eCommerce store in Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_identifier",
+ "required": true,
+ "description": "The identifier for the promo rule in a store. Used to specify which promotional rule to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_code_identifier",
+ "required": true,
+ "description": "The unique identifier for the promo code of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_code_id"
+ },
+ {
+ "name": "discount_code",
+ "required": false,
+ "description": "The discount code for the promo. Must be UTF-8 and up to 50 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "code"
+ },
+ {
+ "name": "promotion_redemption_url",
+ "required": false,
+ "description": "The URL for the promotion campaign. Must be UTF-8, max 2000 characters.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "redemption_url"
+ },
+ {
+ "name": "promo_code_usage_count",
+ "required": false,
+ "description": "Specifies how many times the promo code has been used. Accepts an integer value.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Number of times promo code has been used."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "usage_count"
+ },
+ {
+ "name": "promotion_created_at",
+ "required": false,
+ "description": "The promotion creation date and time in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "created_at_foreign"
+ },
+ {
+ "name": "promotion_update_timestamp",
+ "required": false,
+ "description": "The timestamp when the promotion was updated, in ISO 8601 format. This indicates the last update time of the promo code details.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "updated_at_foreign"
+ },
+ {
+ "name": "is_promo_code_enabled",
+ "required": false,
+ "description": "Set to true to enable the promo code, or false to disable it.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo code is currently enabled."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "enabled"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdPromocodesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}/promo-codes/{promo_code_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_identifier",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_code_id",
+ "tool_parameter_name": "promo_code_identifier",
+ "description": "The id for the promo code of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo code of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "code",
+ "tool_parameter_name": "discount_code",
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The discount code. Restricted to UTF-8 characters with max length 50."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "redemption_url",
+ "tool_parameter_name": "promotion_redemption_url",
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "usage_count",
+ "tool_parameter_name": "promo_code_usage_count",
+ "description": "Number of times promo code has been used.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Number of times promo code has been used."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "enabled",
+ "tool_parameter_name": "is_promo_code_enabled",
+ "description": "Whether the promo code is currently enabled.",
+ "value_schema": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo code is currently enabled."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "created_at_foreign",
+ "tool_parameter_name": "promotion_created_at",
+ "description": "The date and time the promotion was created in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "updated_at_foreign",
+ "tool_parameter_name": "promotion_update_timestamp",
+ "description": "The date and time the promotion was updated in ISO 8601 format.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Code\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Code.\",\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Promo Code\",\n \"description\": \"The discount code. Restricted to UTF-8 characters with max length 50.\",\n \"example\": \"summersale\"\n },\n \"redemption_url\": {\n \"type\": \"string\",\n \"title\": \"Redemption Url\",\n \"description\": \"The url that should be used in the promotion campaign restricted to UTF-8 characters with max length 2000.\",\n \"example\": \"A url that applies promo code directly at checkout or a url that points to sale page or store url\"\n },\n \"usage_count\": {\n \"type\": \"integer\",\n \"title\": \"Promo Code Usage Count\",\n \"description\": \"Number of times promo code has been used.\"\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo code is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdatePromoRule.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdatePromoRule.json
new file mode 100644
index 00000000..5fed3d65
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdatePromoRule.json
@@ -0,0 +1,349 @@
+{
+ "name": "UpdatePromoRule",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdatePromoRule@0.1.0",
+ "description": "Update a promotional rule in an e-commerce store.\n\nUse this tool to modify details of an existing promotional rule in a specified e-commerce store. It should be called when you need to update the conditions or discounts associated with a promo rule.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "store_identifier",
+ "required": true,
+ "description": "Specify the unique identifier of the e-commerce store where the promo rule will be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "store_id"
+ },
+ {
+ "name": "promo_rule_identifier",
+ "required": true,
+ "description": "The unique identifier for the promotional rule within the store. This is required to specify which promo rule to update.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "promo_rule_id"
+ },
+ {
+ "name": "promo_rule_details",
+ "required": true,
+ "description": "Details of the promo rule update, including title, description, start and end dates, type, target, amount, and enabled status. Expected as JSON.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255."
+ },
+ "starts_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed."
+ },
+ "target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The target that the discount applies to."
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo rule is currently enabled."
+ },
+ "created_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchEcommerceStoresIdPromorulesId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/ecommerce/stores/{store_id}/promo-rules/{promo_rule_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "store_id",
+ "tool_parameter_name": "store_identifier",
+ "description": "The store id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The store id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "promo_rule_id",
+ "tool_parameter_name": "promo_rule_identifier",
+ "description": "The id for the promo rule of a store.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id for the promo rule of a store."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "promo_rule_details",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "title": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes."
+ },
+ "description": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The description of a promotion restricted to UTF-8 characters with max length 255."
+ },
+ "starts_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion is in effect in ISO 8601 format."
+ },
+ "ends_at": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format."
+ },
+ "amount": {
+ "val_type": "number",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive."
+ },
+ "type": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "fixed",
+ "percentage"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "Type of discount. For free shipping set type to fixed."
+ },
+ "target": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": [
+ "per_item",
+ "total",
+ "shipping"
+ ],
+ "properties": null,
+ "inner_properties": null,
+ "description": "The target that the discount applies to."
+ },
+ "enabled": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the promo rule is currently enabled."
+ },
+ "created_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was created in ISO 8601 format."
+ },
+ "updated_at_foreign": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The date and time the promotion was updated in ISO 8601 format."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"E-commerce Promo Rule\",\n \"description\": \"Information about an Ecommerce Store's specific Promo Rule.\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n \"title\": \"Title\",\n \"description\": \"The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length of 100 bytes.\",\n \"example\": \"50% off Total Order\"\n },\n \"description\": {\n \"type\": \"string\",\n \"title\": \"Description\",\n \"description\": \"The description of a promotion restricted to UTF-8 characters with max length 255.\",\n \"example\": \"Save BIG during our summer sale!\"\n },\n \"starts_at\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Promo Start Time\",\n \"description\": \"The date and time when the promotion is in effect in ISO 8601 format.\"\n },\n \"ends_at\": {\n \"type\": \"string\",\n \"format\": \"Promo date-time\",\n \"title\": \"End Time\",\n \"description\": \"The date and time when the promotion ends. Must be after starts_at and in ISO 8601 format.\"\n },\n \"amount\": {\n \"type\": \"number\",\n \"title\": \"Amount\",\n \"format\": \"float\",\n \"description\": \"The amount of the promo code discount. If 'type' is 'fixed', the amount is treated as a monetary value. If 'type' is 'percentage', amount must be a decimal value between 0.0 and 1.0, inclusive.\",\n \"example\": 0.5\n },\n \"type\": {\n \"type\": \"string\",\n \"title\": \"Type\",\n \"description\": \"Type of discount. For free shipping set type to fixed.\",\n \"enum\": [\n \"fixed\",\n \"percentage\"\n ]\n },\n \"target\": {\n \"type\": \"string\",\n \"title\": \"Target\",\n \"description\": \"The target that the discount applies to.\",\n \"enum\": [\n \"per_item\",\n \"total\",\n \"shipping\"\n ]\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"title\": \"Enabled\",\n \"description\": \"Whether the promo rule is currently enabled.\",\n \"example\": \"true\"\n },\n \"created_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Create Time\",\n \"description\": \"The date and time the promotion was created in ISO 8601 format.\"\n },\n \"updated_at_foreign\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"title\": \"Foreign Update Time\",\n \"description\": \"The date and time the promotion was updated in ISO 8601 format.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateTemplateFolder.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateTemplateFolder.json
new file mode 100644
index 00000000..7854b68e
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateTemplateFolder.json
@@ -0,0 +1,140 @@
+{
+ "name": "UpdateTemplateFolder",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateTemplateFolder@0.1.0",
+ "description": "Update a specific folder for organizing templates.\n\nThis tool updates a specific folder used to organize templates in Mailchimp. It should be called when you need to change the details of a template folder, identified by its ID.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "template_folder_id",
+ "required": true,
+ "description": "The unique identifier for the template folder to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ },
+ {
+ "name": "folder_name",
+ "required": true,
+ "description": "The new name for the template folder. Provide a string value.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchTemplateFoldersId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/template-folders/{folder_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "template_folder_id",
+ "description": "The unique id for the template folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique id for the template folder."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "folder_name",
+ "description": "The name of the folder.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the folder."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Template Folder\",\n \"description\": \"A folder used to organize templates.\",\n \"required\": [\n \"name\"\n ],\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Folder Name\",\n \"description\": \"The name of the folder.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateWebhookSettings.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateWebhookSettings.json
new file mode 100644
index 00000000..2e7f887f
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UpdateWebhookSettings.json
@@ -0,0 +1,371 @@
+{
+ "name": "UpdateWebhookSettings",
+ "fully_qualified_name": "MailchimpTransactionApi.UpdateWebhookSettings@0.1.0",
+ "description": "Update the settings for an existing webhook.\n\nUse this tool to modify the configuration of a specific webhook linked to a mailing list. This is useful for changing how the webhook operates without creating a new one.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "list_id",
+ "required": true,
+ "description": "The unique identifier for the mailing list associated with the webhook.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "list_id"
+ },
+ {
+ "name": "webhook_identifier",
+ "required": true,
+ "description": "The unique identifier for the webhook to be updated.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "webhook_id"
+ },
+ {
+ "name": "webhook_settings",
+ "required": true,
+ "description": "JSON object with webhook URL, events, and sources configuration, such as triggering options.",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "events": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list subscriber is added."
+ },
+ "unsubscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list member unsubscribes."
+ },
+ "profile": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated."
+ },
+ "cleaned": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list."
+ },
+ "upemail": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed."
+ },
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled."
+ }
+ },
+ "inner_properties": null,
+ "description": "The events that can trigger the webhook and whether they are enabled."
+ },
+ "sources": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "user": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by subscriber-initiated actions."
+ },
+ "admin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface."
+ },
+ "api": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by actions initiated via the API."
+ }
+ },
+ "inner_properties": null,
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "requestBody"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'patchListsIdWebhooksId'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/lists/{list_id}/webhooks/{webhook_id}",
+ "http_method": "PATCH",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "list_id",
+ "tool_parameter_name": "list_id",
+ "description": "The unique ID for the list.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique ID for the list."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "webhook_id",
+ "tool_parameter_name": "webhook_identifier",
+ "description": "The webhook's id.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The webhook's id."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "requestBody",
+ "tool_parameter_name": "webhook_settings",
+ "description": "",
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "url": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "A valid URL for the Webhook."
+ },
+ "events": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "subscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list subscriber is added."
+ },
+ "unsubscribe": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a list member unsubscribes."
+ },
+ "profile": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's profile is updated."
+ },
+ "cleaned": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is cleaned from the list."
+ },
+ "upemail": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a subscriber's email address is changed."
+ },
+ "campaign": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered when a campaign is sent or cancelled."
+ }
+ },
+ "inner_properties": null,
+ "description": "The events that can trigger the webhook and whether they are enabled."
+ },
+ "sources": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": {
+ "user": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by subscriber-initiated actions."
+ },
+ "admin": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by admin-initiated actions in the web interface."
+ },
+ "api": {
+ "val_type": "boolean",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "Whether the webhook is triggered by actions initiated via the API."
+ }
+ },
+ "inner_properties": null,
+ "description": "The possible sources of any events that can trigger the webhook and whether they are enabled."
+ }
+ },
+ "inner_properties": null,
+ "description": ""
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Add Webhook\",\n \"description\": \"Configure a webhook for the given list.\",\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n \"title\": \"URL\",\n \"description\": \"A valid URL for the Webhook.\",\n \"example\": \"http://yourdomain.com/webhook\"\n },\n \"events\": {\n \"type\": \"object\",\n \"title\": \"Events\",\n \"description\": \"The events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"subscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Subscribed\",\n \"description\": \"Whether the webhook is triggered when a list subscriber is added.\",\n \"example\": true\n },\n \"unsubscribe\": {\n \"type\": \"boolean\",\n \"title\": \"Unsubscribed\",\n \"description\": \"Whether the webhook is triggered when a list member unsubscribes.\",\n \"example\": true\n },\n \"profile\": {\n \"type\": \"boolean\",\n \"title\": \"Profile Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's profile is updated.\",\n \"example\": true\n },\n \"cleaned\": {\n \"type\": \"boolean\",\n \"title\": \"Cleaned\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is cleaned from the list.\",\n \"example\": true\n },\n \"upemail\": {\n \"type\": \"boolean\",\n \"title\": \"Email Address Updated\",\n \"description\": \"Whether the webhook is triggered when a subscriber's email address is changed.\",\n \"example\": true\n },\n \"campaign\": {\n \"type\": \"boolean\",\n \"title\": \"Campaign Sent\",\n \"description\": \"Whether the webhook is triggered when a campaign is sent or cancelled.\",\n \"example\": true\n }\n }\n },\n \"sources\": {\n \"type\": \"object\",\n \"title\": \"Sources\",\n \"description\": \"The possible sources of any events that can trigger the webhook and whether they are enabled.\",\n \"properties\": {\n \"user\": {\n \"type\": \"boolean\",\n \"title\": \"User\",\n \"description\": \"Whether the webhook is triggered by subscriber-initiated actions.\",\n \"example\": true\n },\n \"admin\": {\n \"type\": \"boolean\",\n \"title\": \"Admin\",\n \"description\": \"Whether the webhook is triggered by admin-initiated actions in the web interface.\",\n \"example\": true\n },\n \"api\": {\n \"type\": \"boolean\",\n \"title\": \"API\",\n \"description\": \"Whether the webhook is triggered by actions initiated via the API.\",\n \"example\": true\n }\n }\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": true,
+ "validate_request_body_schema": true,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UploadFileToFileManager.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UploadFileToFileManager.json
new file mode 100644
index 00000000..e69bdb04
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/UploadFileToFileManager.json
@@ -0,0 +1,173 @@
+{
+ "name": "UploadFileToFileManager",
+ "fully_qualified_name": "MailchimpTransactionApi.UploadFileToFileManager@0.1.0",
+ "description": "Upload a new file or image to the File Manager.\n\nUse this tool to upload files or images to the File Manager, enhancing content management.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "file_name",
+ "required": true,
+ "description": "The name to be assigned to the uploaded file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "name"
+ },
+ {
+ "name": "file_content_base64",
+ "required": true,
+ "description": "The base64-encoded contents of the file to be uploaded.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded contents of the file."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "file_data"
+ },
+ {
+ "name": "folder_id",
+ "required": false,
+ "description": "The ID of the folder where the file will be uploaded. This should be an integer.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "folder_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postFileManagerFiles'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/file-manager/files",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "folder_id",
+ "tool_parameter_name": "folder_id",
+ "description": "The id of the folder.",
+ "value_schema": {
+ "val_type": "integer",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The id of the folder."
+ },
+ "accepted_as": "body",
+ "required": false,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "name",
+ "tool_parameter_name": "file_name",
+ "description": "The name of the file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The name of the file."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "file_data",
+ "tool_parameter_name": "file_content_base64",
+ "description": "The base64-encoded contents of the file.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The base64-encoded contents of the file."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Gallery File\",\n \"description\": \"An individual file listed in the File Manager.\",\n \"required\": [\n \"name\",\n \"file_data\"\n ],\n \"properties\": {\n \"folder_id\": {\n \"type\": \"integer\",\n \"title\": \"Folder ID\",\n \"description\": \"The id of the folder.\"\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"File Name\",\n \"description\": \"The name of the file.\"\n },\n \"file_data\": {\n \"type\": \"string\",\n \"title\": \"File Data\",\n \"description\": \"The base64-encoded contents of the file.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/VerifyScriptInstallation.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/VerifyScriptInstallation.json
new file mode 100644
index 00000000..5cee9b4c
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/VerifyScriptInstallation.json
@@ -0,0 +1,107 @@
+{
+ "name": "VerifyScriptInstallation",
+ "fully_qualified_name": "MailchimpTransactionApi.VerifyScriptInstallation@0.1.0",
+ "description": "Verify if the Mailchimp connected site script is installed.\n\nThis tool checks if a Mailchimp connected site's script has been correctly installed using the script URL or fragment. Use it to confirm script deployment.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "site_unique_identifier",
+ "required": true,
+ "description": "The unique identifier for the Mailchimp connected site to verify script installation.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "connected_site_id"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'postConnectedSitesIdActionsVerifyScriptInstallation'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/connected-sites/{connected_site_id}/actions/verify-script-installation",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "connected_site_id",
+ "tool_parameter_name": "site_unique_identifier",
+ "description": "The unique identifier for the site.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The unique identifier for the site."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": null,
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/VerifySendingDomain.json b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/VerifySendingDomain.json
new file mode 100644
index 00000000..1c4f17c1
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/arcade_mailchimp_marketing_api/wrapper_tools/VerifySendingDomain.json
@@ -0,0 +1,140 @@
+{
+ "name": "VerifySendingDomain",
+ "fully_qualified_name": "MailchimpTransactionApi.VerifySendingDomain@0.1.0",
+ "description": "Verify if a domain is authorized for sending emails.\n\nUse this tool to verify whether a specific domain is authorized for sending emails through Mailchimp. It should be called when you need to confirm the sending capabilities of a domain.",
+ "toolkit": {
+ "name": "ArcadeMailchimpMarketingApi",
+ "description": null,
+ "version": "0.1.0"
+ },
+ "input": {
+ "parameters": [
+ {
+ "name": "domain_name_to_verify",
+ "required": true,
+ "description": "The domain name you wish to verify for sending emails through Mailchimp.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "domain_name"
+ },
+ {
+ "name": "verification_code",
+ "required": true,
+ "description": "The code sent to the provided email address for domain verification.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The code that was sent to the email address provided when adding a new domain to verify."
+ },
+ "inferrable": true,
+ "http_endpoint_parameter_name": "code"
+ }
+ ]
+ },
+ "output": {
+ "description": "Response from the API endpoint 'verifyDomain'.",
+ "available_modes": [
+ "value",
+ "error",
+ "null"
+ ],
+ "value_schema": {
+ "val_type": "json",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": null
+ }
+ },
+ "requirements": {
+ "authorization": {
+ "provider_id": "arcade-mailchimp",
+ "provider_type": "oauth2",
+ "id": null,
+ "oauth2": null
+ },
+ "secrets": null,
+ "metadata": null
+ },
+ "deprecation_message": null,
+ "metadata": {
+ "object_type": "api_wrapper_tool",
+ "version": "1.1.0",
+ "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+ },
+ "http_endpoint": {
+ "metadata": {
+ "object_type": "http_endpoint",
+ "version": "1.2.0",
+ "description": ""
+ },
+ "url": "/verified-domains/{domain_name}/actions/verify",
+ "http_method": "POST",
+ "headers": {},
+ "parameters": [
+ {
+ "name": "domain_name",
+ "tool_parameter_name": "domain_name_to_verify",
+ "description": "The domain name.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The domain name."
+ },
+ "accepted_as": "path",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ },
+ {
+ "name": "code",
+ "tool_parameter_name": "verification_code",
+ "description": "The code that was sent to the email address provided when adding a new domain to verify.",
+ "value_schema": {
+ "val_type": "string",
+ "inner_val_type": null,
+ "enum": null,
+ "properties": null,
+ "inner_properties": null,
+ "description": "The code that was sent to the email address provided when adding a new domain to verify."
+ },
+ "accepted_as": "body",
+ "required": true,
+ "deprecated": false,
+ "default": null,
+ "documentation_urls": []
+ }
+ ],
+ "documentation_urls": [],
+ "secrets": [
+ {
+ "arcade_key": "auth_token",
+ "parameter_name": "Authorization",
+ "accepted_as": "header",
+ "formatted_value": "Bearer {authorization}",
+ "description": "The OAuth token to use for authentication.",
+ "is_auth_token": true
+ }
+ ],
+ "request_body_spec": "{\n \"x-moar-converted-from-body-param\": true,\n \"description\": \"\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"title\": \"Verify a domain for sending.\",\n \"description\": \"Submit a response to the verification challenge and verify a domain for sending.\",\n \"required\": [\n \"code\"\n ],\n \"properties\": {\n \"code\": {\n \"type\": \"string\",\n \"title\": \"Verification Code\",\n \"description\": \"The code that was sent to the email address provided when adding a new domain to verify.\"\n }\n }\n }\n }\n }\n}",
+ "use_request_body_schema_mode": false,
+ "validate_request_body_schema": false,
+ "url_method_call": "await utils.get_base_url(context, HTTP_CLIENT)",
+ "url_method_call_field_name": "base_url"
+ }
+}
diff --git a/toolkits/mailchimp_marketing_api/pyproject.toml b/toolkits/mailchimp_marketing_api/pyproject.toml
new file mode 100644
index 00000000..d9879ed6
--- /dev/null
+++ b/toolkits/mailchimp_marketing_api/pyproject.toml
@@ -0,0 +1,61 @@
+[build-system]
+requires = [ "hatchling",]
+build-backend = "hatchling.build"
+
+[project]
+name = "arcade_mailchimp_marketing_api"
+version = "0.1.0"
+description = "Tools that enable LLMs to interact directly with the Mailchimp Marketing API."
+requires-python = ">=3.10"
+dependencies = [
+ "arcade-tdk>=3.0.0,<4.0.0",
+ "httpx[http2]>=0.27.2,<1.0.0",
+ "jsonschema>=4.0.0,<5.0.0",
+]
+[[project.authors]]
+email = "support@arcade.dev"
+
+[project.optional-dependencies]
+dev = [
+ "arcade-mcp[all]>=1.2.0,<2.0.0",
+ "arcade-serve>=3.0.0,<4.0.0",
+ "pytest>=8.3.0,<8.4.0",
+ "pytest-cov>=4.0.0,<4.1.0",
+ "pytest-mock>=3.11.1,<3.12.0",
+ "pytest-asyncio>=0.24.0,<0.25.0",
+ "mypy>=1.5.1,<1.6.0",
+ "pre-commit>=3.4.0,<3.5.0",
+ "tox>=4.11.1,<4.12.0",
+ "ruff>=0.7.4,<0.8.0",
+]
+
+# Use local path sources for arcade libs when working locally
+[tool.uv.sources]
+arcade-mcp = { path = "../../", editable = true }
+arcade-serve = { path = "../../libs/arcade-serve/", editable = true }
+arcade-tdk = { path = "../../libs/arcade-tdk/", editable = true }
+
+# Tell Arcade.dev that this package is a toolkit
+[project.entry-points.arcade_toolkits]
+toolkit_name = "arcade_mailchimp_marketing_api"
+
+[tool.mypy]
+files = [ "arcade_mailchimp_marketing_api/**/*.py",]
+python_version = "3.10"
+disallow_untyped_defs = true
+disallow_any_unimported = true
+no_implicit_optional = true
+check_untyped_defs = true
+warn_return_any = true
+warn_unused_ignores = true
+show_error_codes = true
+ignore_missing_imports = true
+
+[tool.pytest.ini_options]
+testpaths = [ "tests",]
+
+[tool.coverage.report]
+skip_empty = true
+
+[tool.hatch.build.targets.wheel]
+packages = [ "arcade_mailchimp_marketing_api",]
diff --git a/toolkits/mailchimp_marketing_api/tests/__init__.py b/toolkits/mailchimp_marketing_api/tests/__init__.py
new file mode 100644
index 00000000..e69de29b